CentOS环境下tomcat启动超级慢的解决方案
2017-06-20 00:00
357 查看
摘要: 在本地开发环境,应用正常启动。 在CentOS测试环境,应用启动速度也是正常的。 但是在阿里云的生产环境,tomcat启动超级慢,并且在最终打印出来以下内容: org.apache.catalina.util.SessionIdGenerator createSecureRandom INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [152,149] milliseconds. 152秒,这可以就是2分钟啊。
在本地开发环境,应用正常启动。
在CentOS测试环境,应用启动速度也是正常的。
但是在阿里云的生产环境,tomcat启动超级慢,并且在最终打印出来以下内容:
152秒,这可以就是2分钟啊。并且如果多次启动,可能需要等待更久,有几次上线只是在启动时等待了5分钟多。
经过百度,发现是Tomcat 7/8使用org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom类产生安全随机类SecureRandom的实例作为会话ID时,由于堵塞,造成时间上的消耗。
解决方案如下,由于第一种需要修改catalina.sh,在生产环境没有尝试。而是采用的第二种的方式。
有两种解决办法:
1)在Tomcat环境中解决
可以通过配置JRE使用非阻塞的Entropy Source。
在catalina.sh中加入这么一行:-Djava.security.egd=file:/dev/./urandom 即可。
加入后再启动Tomcat,整个启动耗时下降到Server startup in 2912 ms。
2)【已验证】在JVM环境中解决
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/urandom
替换成
securerandom.source=file:/dev/./urandom
用云栖社区APP,舒服~
原文链接
在本地开发环境,应用正常启动。
在CentOS测试环境,应用启动速度也是正常的。
但是在阿里云的生产环境,tomcat启动超级慢,并且在最终打印出来以下内容:
org.apache.catalina.util.SessionIdGenerator createSecureRandom INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [152,149] milliseconds.
152秒,这可以就是2分钟啊。并且如果多次启动,可能需要等待更久,有几次上线只是在启动时等待了5分钟多。
经过百度,发现是Tomcat 7/8使用org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom类产生安全随机类SecureRandom的实例作为会话ID时,由于堵塞,造成时间上的消耗。
解决方案如下,由于第一种需要修改catalina.sh,在生产环境没有尝试。而是采用的第二种的方式。
有两种解决办法:
1)在Tomcat环境中解决
可以通过配置JRE使用非阻塞的Entropy Source。
在catalina.sh中加入这么一行:-Djava.security.egd=file:/dev/./urandom 即可。
加入后再启动Tomcat,整个启动耗时下降到Server startup in 2912 ms。
2)【已验证】在JVM环境中解决
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/urandom
替换成
securerandom.source=file:/dev/./urandom
用云栖社区APP,舒服~
原文链接
相关文章推荐
- CentOS环境下tomcat启动超级慢的解决方案
- CentOS环境下tomcat启动超级慢的解决方案
- 阿里云CentOS环境下tomcat启动超级慢的解决方案
- Tomcat7在Centos环境下启动缓慢,SecureRandom instance for session ID generation using[SHA1PRNG] took [530,729]
- 阿里云服务器Linux Centos6.5搭建JavaWeb环境系列之Tomcat开机自启动
- Linux(CentOS 7.3)下安装JAVA环境和Tomcat环境启动Tomcat服务器
- CentOS 7环境配置tomcat7开机启动
- centos无法启动tomcat解决方案(阿里云、centos7)
- Linux (CentOS 7.3) 下安装JAVA环境和Tomcat环境启动Tomcat服务器
- 阿里轻量云服务器CentOS7.3 Java Web开发环境配置(Tomcat9+JDK1.8+MySQL5.7) 以及tomcat启动慢和mysql外网访问
- 解决Centos环境下tomcat启动缓慢的问题
- CentOS7下Tomcat启动慢的原因及解决方案
- Centos环境下Tomcat启动缓慢
- Centos环境下Tomcat启动缓慢
- Centos7下启动tomcat很慢原因及解决方案
- CentOS7下Tomcat启动慢的原因及解决方案
- Centos环境下Tomcat启动缓慢
- Centos7+Tomcat8配置javaweb环境,tomcat启动巨慢的问题
- Centos环境下Tomcat启动缓慢
- 解决Centos环境下tomcat启动缓慢的问题