【发布时间】:2017-05-30 20:29:04
【问题描述】:
我正在运营一个流量不错的电子商务网站。
我们的网站在以下堆栈上运行:
- WebApp 是用 Java 构建的,在 Apache Tomcat 上运行
- 我们使用 Nginx 作为网络服务器
- 我们在 AWS 的 EC2 实例上运行我们的网络服务器 - 它以 Ubuntu 作为操作系统。
我们经常部署新的网站代码以包含新功能和错误修复。我们按照以下程序执行此操作:
- 关闭 apache tomcat
- 从
webapps目录中删除ROOT webapp - 在
webapps目录中上传了新的ROOT.war - 重启apache tomcat
现在这个过程会导致网站关闭大约 20-30 秒。这不仅会导致当时的新客户因无法访问网站而流失,而且还会导致正在结帐下订单的现有客户出现一些问题。
有没有办法解决这个问题?通过它我可以部署新版本的网站,而无需 0 停机时间,也不会丢失现有客户的会话数据。
【问题讨论】:
标签: amazon-web-services tomcat nginx amazon-ec2 webserver