INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [162,420] milliseconds.
这个是导致tomcat启动卡在 Root WebApplicationContext: initialization completed in 3970 ms 这里很长时间的原因
据说也是导致数据库功能使用异常的原因
参考
https://www.cnblogs.com/yaomaomao/p/10954468.html
由于linux系统熵池过低 造成jvm 调用时出现阻塞
cat /proc/sys/kernel/random/entropy_avail
cat /proc/sys/kernel/random/poolsize
正常机器
不正常
解决办法:
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
3)增加熵池
yum install rng-tools -y
启动rngd服务
service rngd start