Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [xxxx] milliseconds問題解決


正常的啟動tomcat7而且並沒有報錯,等待了很久終於看到日志打印出來啟動成功了

在這里等了4分鍾

Tomcat 7/8都使用org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom類產生安全隨機類SecureRandom的實例作為會話ID,這里花去了4分鍾。就是這里花了大量的時間去。

 

有兩種解決辦法:

1.在Tomcat環境中解決

可以通過配置JRE使用非阻塞的Entropy Source。

在catalina.sh中加入這么一行:-Djava.security.egd=file:/dev/./urandom 即可。

加入后再啟動Tomcat,整個啟動耗時下降到Server startup in 6213 ms,大大降低了啟動的時間。

2.在JVM環境中解決

先執行which javac命令檢查jdk安裝路徑

/usr/local/java/jdk1.8.0_92/bin/javac

去到$JAVA_PATH/jre/lib/security/java.security這個文件,找到下面的內容:

securerandom.source=file:/dev/urandom

替換成

securerandom.source=file:/dev/./urandom

 

這樣問題就解決了

 

原文出處:https://my.oschina.net/handsomejun/blog/708165

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM