4

如何自动化(无停机)部署?
并且能够关闭任何服务器进行维护。
我应该使用什么工具?

我正在使用 Tomcat,但我愿意迁移到最适合所提出要求的其他 Java EE 服务器。

我想知道准备使用的配置细节。

4

2 回答 2

3

从 WebLogic 9 开始,WebLogic 具有允许在不停机的情况下部署新版本应用程序的功能,称为并行部署:

并行部署: BEA WebLogic Server 9.0 支持跨 WebLogic 集群部署同一应用程序的多个版本;新客户端请求被路由到新版本,对旧版本的现有客户端没有影响。一旦所有现有客户端完成处理,BEA WebLogic Server 将自动淘汰旧版本的应用程序。这消除了构建生产环境的复制版本、在两个环境中部署两个不同版本或使用负载均衡器将应用程序流量切换到新版本的需要。

WebLogic Server 还支持整个服务器级别的迁移,其中一个可迁移的服务器实例及其所有服务都被迁移到不同的物理机器上。这可以用于服务器维护。

请注意,并非所有平台都支持整个服务器迁移,并且显然具有不可忽略的成本(就基础架构而言)。

于 2010-02-04T13:34:46.800 回答
3

如果你有两个 tomcat 在一个集群中运行(在负载均衡器后面或 apache 后面),那真的很容易。

  1. 将服务器 1 从集群中取出,更新服务器。
  2. 使服务器 1 备份。
  3. 将服务器 2 从集群中取出,更新服务器。
  4. 将服务器 2 备份。

如果您正在完全重新部署您的应用程序,其他任何事情都会导致停机(无论多么短暂)。

如果您可以容忍一点停机时间(<1 秒),那么您可以通过部署到第二个 tomcat 实例来模拟这一点,然后将负载均衡器指向第二个实例。在这种情况下,您将丢失任何活动会话,但切换应该非常快。

不过,在这两种情况下,您都必须解决数据库同步问题。

于 2010-02-02T22:54:08.470 回答