我们有一个作为生产服务器上的Windows服务运行的应用程序。应用程序主要在部署边界上分区为几个程序集。我想简化应用程序程序集的热修复程序的部署。目前我执行以下步骤来部署修补程序。 (我们的生产环境升级的副本,所以一切都要进行两次).net程序集的热部署
- 登录到服务器
- 停止服务
- 备份当前部署的DLL
- 与修补程序替换(副本在现有的DLL修复程序)
- 重新启动服务
- 回滚意外加载错误(的情况还没有发生,但是)
我想我想要的是上传(SFTP)一个DLL到预设文件夹,并让应用程序拿起新的DLL。
我考虑的一个解决方案是在服务器上运行单独的服务。我们称之为修补程序部署服务。它会监视文件系统中的新文件并从上面的列表中执行步骤2-6。
任何洞察力是赞赏。我愿意接受其他替代方案,只要他们减少部署摩擦。
ShadowCopyFiles在这里很大。 – 2009-12-07 19:37:01
是的,尽管有备份要求,但在这种特定情况下可能不是问题。 – 2009-12-07 19:38:58
备份步骤并不困难,它只是我做的一个步骤,可以快速回滚。我对ShadowCopyFiles不熟悉,不得不考虑这一点。 – 2009-12-07 19:43:03