随机数引起的阻塞问题

原创
2020/01/26 22:06
阅读数 208

目前SpringBoot的项目在脚本启动过程中,因为JVM随机数算法选用不当导致启动时的SessionID生成非常慢的情况,并且会有连接Oracle失败的情况出现,可以参考《JVM上的随机数与熵池策略》这篇文章。

原始的启动命令:

java -jar xxx.jar
nohup java -jar xxx.jar >/dev/null 2>&1 &

修改后的启动命令:

java -Djava.security.egd=file:/dev/./urandom -jar xxx.jar
nohup java -Djava.security.egd=file:/dev/./urandom -jar xxx.jar >/dev/null 2>&1 &

针对Tomcat启动时会有"At least one JAR was scanned for TLDs yet contained no TLDs"错误,启动卡住的问题,修改catalina.sh:

JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS"
JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS -Djava.security.egd=file:/dev/urandom"

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部