原因:
Tomcat7/8中有时会出现启动慢的问题,因为org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom类会根据Java.security.egd 属性或securerandom.source属性值需要产生一个随机数,随机数是从熵池中创建的,当属性值为/dev/random,熵池为空时,/dev/random读随机数会被阻塞,直到熵池不为空,这样会导致tomcat启动过慢,服务应用没有完全启动。
解决办法:
根据jdk配置环境,找到jdk安装路径,
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/urandom
替换成
securerandom.source=file:/dev/./urandom
具体如下图:
找到这段代码:securerandom.source=file:/dev/urandom
替换成:securerandom.source=file:/dev/./urandom