启动tomcat的时候会发现启动很慢怎么解决?
主要原因:
就是通过随机数生成秘钥的时候卡住了,导致Tomcat启动慢或失败。
解决办法:
JVM的启动项参数-Djava.security.egd
配置文件$JAVA_PATH/jre/lib/security/java.security是否配置参数securerandom.source
当两种随即源都存在时,1的优先级高于2 ; JDK1.8中,java.security文件中的securerandom.source的默认值为:file:/dev/random
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