如何在生产中热部署 Java 应用程序?

如何在生产中热部署 Java 应用程序?

假设您有一个高效的 Java 应用程序,并且不希望软件更新(包括更新的 .class 文件)生效时出现(哪怕是短暂的)停机时间。

您使用什么基础设施/服务器/工具来实现这一目标?

任何经验都非常感谢!可以是任何类似两台服务器,其中一台更新,而另一台执行“旧”工作,例如 Tomcat 服务器的功能或支持此功能的工具。

答案1

从您的描述中看不完全清楚,但我猜您是在谈论 Java EE 而不是 Java SE 应用程序?Java SE,我们只使用 JNLP 进行部署。Java EE,我们使用 Glassfish 作为容器,它有一个安装新版本的选项,不会中断当前会话。我们不是超级重度用户,所以我不能完全肯定它已经防止了问题,但我们从未遇到过问题。我们的 Tomcat EE 用户只是在我们进行更新时定期受到粗鲁的干扰,现在对此已经习惯了。:-(

相关内容