2010-04-22 59 views
2

我们有一个大型的系统,有大约15个服务器托管.Net WCF服务,mvc应用程序等。 当我们进行部署时(不在办公室的时间),我们必须卸载并在活动服务器上安装所有内容。 这需要很多时间,如果出现问题,我们必须回滚一切。 你能否提出一些与此不同的建议? 像 Deply到其他环境(只要你喜欢)并切换URL指向新的服务器 [这个带有维护生产的2份(主动和被动)的成本开销]部署过程

任何其他的想法请。

回答

1

服务是否需要卸载全部部署?

你可以有一个剧本,这是否对所有并行的服务器:

  • 停止替换的文件的任何窗口服务
  • 停止IIS
  • 制作备份
  • 的XCopy组件,资源,网站文件。
  • 如果部署服务(根据需要),也许运行InstallUtil。
  • 启动IIS和服务。

这样的脚本执行时间不会太长。有了15台服务器,写这个服务器是非常值得的,并且使部署和回滚过程完全自动化。

1

听起来你需要一个负载均衡器来处理生产服务器的流量。您可以将所有新代码部署到服务器场B,并使用测试DNS条目对其进行测试。一旦您对更改感到满意,您可以将服务器场A的负载均衡器地址重新命名为服务器场B,然后它将变为活动状态。唯一不利的一面是数据库更改。