要部署我们网站的新版本,我们执行以下操作:
- 压缩新代码,并将其上传到服务器。
- 在实时服务器上,删除 IIS 网站目录中的所有实时代码。
- 将新代码 zip 文件解压到现在为空的 IIS 目录
这个过程都是脚本化的,发生得很快,但是当删除旧文件和部署新文件时,仍然可能有 10-20 秒的停机时间。
关于 0 秒停机方法有什么建议吗?
最佳答案
您需要 2 台服务器和一个负载均衡器。步骤如下:
- 关闭服务器 2 上的所有流量
- 部署在服务器 1 上
- 测试服务器 1
- 关闭服务器 1 上的所有流量
- 部署在服务器 2 上
- 测试服务器 2
- 在两台服务器上打开流量
事实是,即使在这种情况下,如果您使用“粘性 session ”,您仍然会遇到应用程序重新启动和 session 丢失的情况。如果您有数据库 session 或状态服务器,那么一切都应该没问题。
关于asp.net - 如何以零停机时间部署 ASP.NET 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/148084/