centos下tomcat啓動卡死

遇到好幾回了,老是忘記哪一個位置~!!!java

tomcat啓動時查看日誌會卡在一個位置很長時間,以下linux

28-Aug-2018 22:56:55.216 INFO [localhost-startStop-1] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [165,526] milliseconds.

這種狀況通常是由於sessionid獲取時卡住了,sessionId獲取經過java提供的隨機數產生,隨機數在java.security.SecureRandom裏面,算法使用的是」SHA1PRNG」,在sun/oracle的jdk裏。這個算法的提供者在底層依賴到操做系統提供的隨機數據,在linux上,與之相關的是/dev/random和/dev/urandom。算法

修改辦法:apache

在 $JAVA_HOME/jre/lib/security/java.security 這個文件,找到裏面的 securerandom.source=file:/dev/random  改成:securerandom.source=file:/dev/./urandom 便可。tomcat

 

具體產生緣由:session

/dev/randomoracle

在讀取時,/dev/random設備會返回小於熵池噪聲總數的隨機字節。/dev/random可生成高隨機性的公鑰或一次性密碼本。若熵池空了,對/dev/random的讀操做將會被阻塞,直到收集到了足夠的環境噪聲爲止。dom

/dev/urandom操作系統

dev/random的一個副本是/dev/urandom (」unlocked」,非阻塞的隨機數發生器),它會重複使用熵池中的數據以產生僞隨機數據。這表示對/dev/urandom的讀取操做不會產生阻塞,但其輸出的熵可能小於/dev/random的。它能夠做爲生成較低強度密碼的僞隨機數生成器,不建議用於生成高強度長期密碼。日誌

相關文章
相關標籤/搜索