Tomcat 8 在重启后无法立即启动

Tomcat 8 在重启后无法立即启动

我有 Ubuntu 服务器 15.04,其中 apt-get 安装了 Tomcat 8。首次启动后,它启动正常,我可以看到XX.XX.XX.XX:8080“它正常工作”页面。但之后service tomcat8 restart我需要等待大约 10 分钟,因为这个页面必须启动。同时service tomcat8 status显示服务器状态成功。

服务器出了什么问题?请帮忙,我真的很困惑。

答案1

我遇到了同样的问题。对我来说,答案就在 Tomasz 提供的链接中。Tomcat 正在初始化 SecureRandom,这真的很慢。

解决方法是使用不同的熵源。您可以通过向 tomcat JVM 提供此参数来实现此目的:

-Djava.security.egd=file:/dev/./urandom

我通过创建 setenv.sh 脚本实现了这一点,如果该脚本存在,tomcat 将自动运行该脚本:

touch /usr/share/tomcat8/bin/setenv.sh
chmod +x /usr/share/tomcat8/bin/setenv.sh

将这些行添加到 setenv.sh 并重新启动服务器

#!/bin/sh
export CATALINA_OPTS="$CATALINA_OPTS -Djava.security.egd=file:/dev/./urandom"

答案2

您的应用程序可能会延迟停止(或启动)阶段。请阅读以下说明并检查已部署的应用程序:

http://wiki.apache.org/tomcat/HowTo/FasterStartUp

如果这没有帮助,则 Upstart-Tomcat 兼容性存在问题。Upstart 往往会过早启动一些不太常用的服务,这有时会导致启动过程中崩溃或其他意外的应用程序行为。

相关内容