tomcat8启动慢的问题
2018-03-15 11:15
274 查看
环境:
jdk8tomcat 8
原因:
通过查看日志发现SessionIdGeneratorBase - Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [486,784] milliseconds.
生成sessionID用掉8分钟
解决方法:
第一种方法:修改Java打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/urandom (或者 securerandom.source=file:/dev/random)
替换成
securerandom.source=file:/dev/./urandom
(这里加粗的u一定要带上)
修改后结果:Server startup in 1904 ms
第二种方法:修改/apache-tomcat-8.5.16/bin/catalina.sh
在catalina.sh中的 “#!/bin/sh” 下面添加如下代码:
if [[ "$JAVA_OPTS" != *-Djava.security.egd=* ]]; then
JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"
fi
修改后的结果: Server startup in 1899 ms
第三种方法:添加环境变量
在/etc/profile里添加环境变量:
export JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"
/dev/random会根据噪音产生随机数,如果噪音不够它就会阻塞。Linux是通过I/O,键盘终端、内存使用量、CPU利用率等方式来收集噪音的,如果噪音不够生成随机数的时候就会被阻塞。
生产服务器的熵池为130
#cat /proc/sys/kernel/random/entropy_avail
130
至于在测试环境为什么没有复现是因为测试环境的熵池大一些 848
相关文章推荐
- 关于eclipse可以启动tomcat,但是tomcat不能单独启动的问题。
- Tomcat 启动失败原因分析--端口问题
- 解决启动Tomcat闪退的问题
- 通过Eclipse3.1以上启动Tomcat访问不到tomcat管理界面的问题(转载)
- tomcat 启动失败 严重: Socket accept failed 问题解决
- 关于tomcat中debug模式启动问题
- 关于tomcat启动后马上又自动关闭的问题
- linux 启动和停止tomcat(解决服务已关闭,进程未停止的问题)
- 启动tomcat报错:exception starting filter struts2 unable to load configuration.代码没有任何问题
- 关于tomcat无法启动问题详解
- eclipse部署tomcat服务器无法启动问题的解决方法
- myeclipse2017添加tomcat后,在tomcat启动按钮里面找不到的问题
- 对于myeclipse debug模式启动tomcat不能链接VM问题
- 解决eclipse内存溢出、tomcat内存溢出、eclipse启动web项目45秒失败的问题
- tomcat启动不了web项目的问题解决
- 关于Struts2.1.6中配置 constant name="struts.devMode" value="true" 在tomcat启动时报错的问题 .
- tomcat 启动一些问题的解决(转)
- tomcat启动时SessionIdGeneratorBase.createSecureRandom耗时5分钟的问题
- Tomcat在Eclipse4中的启动时间问题
- jhipster生成的工程war包部署到tomcat中,tomcat正常启动,但一直不加载项目的问题原因。