运行在Docker镜像java:7-jdk上的tomcat,启动时间有时很快,有时很慢。
好长时间都没找到问题所在,偶尔发现了一行log:
-
INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [759,380] milliseconds.
这才找到原因,是JVM随机数生成器阻塞导致启动慢。
在网上搜索“java.security.egd”、“JVM随机数 阻塞”,
可以找到很多文章,介绍的都很详细。这里就不摘抄了。
解决方法是设置
-Djava.security.egd=file:/dev/./urandom
要注意的是,直接写成 file:/dev/urandom 是不管用的。
一定要设置为file:///dev/urandom 或者 file:/dev/./urandom。
阅读(1318) | 评论(0) | 转发(0) |