我如何实现自动化(无停机)部署? 并且可以关闭任何服务器进行维护 我应该使用哪些工具?
我正在使用Tomcat,但我愿意转移到最适合所提出要求的其他Java EE服务器。
我想知道准备好使用配置细节。
答案 0 :(得分:3)
如果你有两个tomcat在集群中运行(在负载均衡器后面或在apache后面),那真的很容易。
如果您正在完全重新部署应用程序,则其他任何操作都会导致停机(无论多么简短)。
如果您可以容忍一小部分停机时间(<1秒),那么您可以通过部署到第二个tomcat实例来模拟这个,然后将您的负载均衡器指向第二个实例。在这种情况下,您将丢失所有活动会话,但切换应该非常快。
在这两种情况下都存在数据库同步问题,但您必须解决这些问题。
答案 1 :(得分:3)
自WebLogic 9以来,WebLogic具有允许部署新版本应用程序而无需停机的功能,这称为并行部署:
并行部署:BEA WebLogic Server 9.0支持部署 多个版本的相同 跨WebLogic群集的应用程序; 新的客户端请求被路由到 新版本并没有影响 旧版本的现有客户端。 BEA WebLogic Server将自动执行 退休旧版本的 申请一次所有现有客户 已完成处理。这个 消除了构建的需要 复制的生产版本 环境,部署两个不同的 两个环境中的版本,或使用 负载平衡器切换应用程序 流量到新版本。
WebLogic Server还支持whole server-level migration,其中可迁移服务器实例及其所有服务将迁移到其他物理计算机。这可以用于服务器维护。
请注意,并非所有平台都支持整个服务器迁移,并且显然具有不可忽略的成本(就基础架构而言)。