今天在linux上的tomcat部署一個網站時,在剛啟動tomcat的時候提示啟動成功,然后也能訪問成功.
可是第二次啟動時雖然沒有報錯,但無法訪問tomcat,查看了catalina.out日志,發現tomcat卡在了INFO: Deploying web application directory ......
后來看了一篇博文解決了問題.在 $JAVA_HOME/jre/lib/security/java.security內,將securerandom.source的內容改為file:/dev/./urandom
原來linux或者部分unix系統提供隨機數設備是/dev/random 和/dev/urandom ,兩個有區別,urandom安全性沒有random高,但random需要時間間隔生成隨機數。
可能在生成隨機數的時候卡住了,導致tomcat啟動不了/
在服務器啟動時也可以加上參數 -Djava.security.egd=file:/dev/./urandom
