linux下tomcat8启动很慢

一、问题描述

CentOS7下安装了tomcat8之后,直接启动,大概过了5min的样子才启动成功。

二、问题原因

查阅网上资料之后,主要原因是:启动tomcat时,需要生成随机数,这个过程很耗时间。

三、解决方案

(1)方案一

参照博客:http://blog.csdn.net/jiftlixu/article/details/53718245

修改catalina.sh文件,找到如下语句(直接搜索JSSE_OPTS,就可以定位到):

if [ -z "$JSSE_OPTS" ] ; then
  JSSE_OPTS="-Djdk.tls.ephemeralDHKeySize=2048"
fi
JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS -Djava.security.egd=file:/dev/urandom"

其中【-Djava.security.egd=file:/dev/urandom】这部分是追加上去的,再次启动tomcat,就可以了。

(2)方案二

博客地址:http://blog.163.com/_kid/blog/static/30405476201741822358123/

在JVM环境中解决
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:

securerandom.source=file:/dev/random 

替换成

securerandom.source=file:/dev/urandom

就可以了。

(3)方案三

参照博客:https://www.jianshu.com/p/576d356dc163

按照这个博主说法,这个方案是治本的方案,但是个人觉得他写的不是很清楚,我就没做尝试。

 

另外我在虚拟机里测试过tomcat8,但虚拟机里启动很快,可能是我开启了cpu的虚拟服务原因。
还有我安装的Nginx貌似没有出现这样的问题。

你可能感兴趣的:(Linux,tomcat)