公司後臺服務使用 tomcat war 包架構,在 tomcat 部署過程當中,啓動 tomcat 會使用環境變量中的 cataline 等環境變量,但啓動過程當中耗時很長,常常出現等待 2-3 min 的狀況;java
Google 了下發現,摘自Google搜索:/* Tomcat 7+ 版本嚴重依賴SecureRandom這個類爲它的session id或其它地方取得隨機數值,這取決於你的JRE,它有可能在tomcat啓動時形成很是大的耗時;*/tomcat
試着解決了下這個問題,在啓動腳本 startup.sh 時,能夠經過配置JRE使用非阻塞的Entropy Source,在bin/catalina.sh中加入這麼一行: -Djava.security.egd="\"file:/dev/./urandom\"" \ session
格式要與上下文對其,並且要被if 引用,一般添加至 -security 的 elif 下;架構