Tomcat7啓動緩慢的解決方法

同事自建的的Tomcat進程啓動緩慢,查看啓動log,經常卡在如下的地方:

Root WebApplicationContext: initialization completed in 1494 ms

求助於度娘,找到一篇博客
徹底找到Tomcat啓動速度慢的元兇

主要原因是:/dev/random會根據噪音產生隨機數,如果噪音不夠它就會阻塞。Linux是通過I/O,鍵盤終端、內存使用量、CPU利用率等方式來收集噪音的,如果噪音不夠生成隨機數的時候就會被阻塞

解決方法:替換/dev/random爲/dev/unrandom,用僞隨機函數生成器(/dev/urandom)來替代隨機函數生成器(/dev/random)。
1、通過修改Tomcat啓動文件-Djava.security.egd=file:/dev/urandom
2、通過修改JRE中的java.security文件securerandom.source=file:/dev/urandom

vim /home/tomcat/bin/catalina.sh
### 添加如下內容 ###
export CATALINA_OPTS="-Djava.security.egd=file:/dev/./urandom"

### 同時可以簡單的優化一下內存 ###
JAVA_OPTS='-Xms2g -Xmx2g'
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章