部署所有应用程序后启动Tomcat的HTTP / HTTPS连接器



问题:

我们在Tomcat中有很多应用程序,每个应用程序都需要大量时间才能开始。

在此期间,如果您向Tomcat端口发出HTTP请求,它将等待所有应用程序完全启动。

由于我们有一个只检查 Tomcat TCP 连接的负载均衡器,因此丢弃该 Tomcat 实例还不够智能。

想要的解决方案:

我想知道如何启动Tomcat,以便它仅在所有应用程序完全部署后才开始侦听HTTP请求。这样,负载均衡器会注意到无法建立 TCP 连接,并且在此期间会丢弃该 Tomcat。

tomcat wiki对此有一个"操作方法">

如何让雄猫启动得更快?

总之:

  • 网页应用配置
  • 删除不必要的 JAR
  • 从扫描中排除 JAR
  • 熵源配置
  • 启用与 startStopThreads 并行启动 Web 应用程序
  • 调整内存参数
  • 尽可能修剪配置文件。XML解析并不便宜。要解析的越少 - 事情就会越快。
  • 删除不需要的任何 Web 应用程序。(因此,请删除所有使用tomcat安装的Web应用程序(
  • 确保你的代码没有做慢事。(使用探查器(

最新更新