我们在 asp.net 平台上构建了一个企业 Web 应用程序,该应用程序在多个服务器之间实现了良好的负载平衡。我们在进行常规部署方面有些挣扎,因为应用程序已定义为零停机时间的 SLA。
对于实施最佳实践以支持不间断部署,我们将不胜感激任何指导/提示。
我们在 asp.net 平台上构建了一个企业 Web 应用程序,该应用程序在多个服务器之间实现了良好的负载平衡。我们在进行常规部署方面有些挣扎,因为应用程序已定义为零停机时间的 SLA。
对于实施最佳实践以支持不间断部署,我们将不胜感激任何指导/提示。
我最喜欢的两本涵盖其中一些主题的书是 Humble/Farley 的 Continuous Delivery 和 Allspaw/Robbins 的 Web Operations。
我认为这里“简单”的部分是进行滚动部署,将节点从负载均衡器中拉出,升级它,运行冒烟测试,然后将其放回负载均衡器中。不同的用户会遇到不同版本的应用程序,但您的停机时间为零。
困难的部分是这些网络应用程序可能会遇到的后端系统/数据库。您基本上需要同时使用新旧模式,这是具有挑战性的。将诸如扩展/收缩数据库模式之类的技术视为实现这一目标的一种方法。