Tomcat 服务器启动缓慢

Tomcat server starts slowly

我有这样一种情况,Tomcat 正在启动我的 java 应用程序,但在继续之前挂起几分钟。启动日志似乎没有指向任何特定内容。

有没有办法调试它?

你的问题很宽泛。在提供答案方面,我们没有任何工作可做。

我只能给你一般的调试建议。

  • 将打印输出添加到 Web 应用程序的启动序列中。手表 他们,看看它挂在哪里。

  • 尝试注释掉启动的一部分,直到你注意到 启动突然加速,你注释掉的最后一点应该 是有问题的。

我曾经遇到过在专用服务器上启动 Tomcat 也需要很长时间的问题。我的问题是用于初始化 SecureRandom 的熵源缺少熵。

这是一个已知错误:https://wiki.apache.org/tomcat/HowTo/FasterStartUp#Entropy_Source

如果这是您的问题,已知的解决方法是:

设置如下系统属性: -Djava.security.egd=file:/dev/./urandom

使用 'new SecureRandom()' 而不是 'SecureRandom.getInstance("SHA1PRNG")'(如果你的代码中有这个 [source])。