问题
Tomat 7 在 Centos 6 上,每次重启 Tomcat 时,总要花3~4分钟。
通过日志看,是 SecureRandom 的计算用了太长的时间。
从网上查,这是 Oracle 的一个 Bug。需要在你的 JRE 中,在 lib/seecurity 下编辑 java.security。
把
securerandom.source=file:/dev/urandom
改成
securerandom.source=file:/dev/./urandom
实测,Tomcat 启动从3~4分钟提升到不到 10 秒钟。
另外,还有一个/dev/random
与 /dev/urandom
的区别。搜了一个 /dev/random
与 /dev/urandom
更可靠,但实际启动中要慢不少,普通的应用场景, /dev/urandom
就够用了。
最可气的 Stackover flow 上有人问这个问题,有个中国人回答了,还被人踩了一脚。