tomcat在linux启动应用慢解决方式

9 篇文章 0 订阅
2 篇文章 0 订阅

问题:

o.a.c.util.SessionIdGeneratorBase - Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [2,741] milliseconds

原因:拿Tomcat /dev/random做关键词,一堆详细说明。建议看wiki。

https://www.cnblogs.com/softidea/p/5873293.html

 

解决方法:

1、在Tomcat环境中解决

可以通过配置JRE使用非阻塞的Entropy Source。
在catalina.sh中加入这么一行:-Djava.security.egd=file:/dev/./urandom 即可。
加入后再启动Tomcat,整个启动耗时下降到Server startup in 2912 ms。


2、在JVM环境中解决(*实测,真实好使)
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/urandom 
替换成
securerandom.source=file:/dev/./urandom

3、使用rngd、rng-tools 扩大linux 服务器的熵值

查看当前熵池大小:cat /proc/sys/kernel/random/entropy_avail

安装:apt-get install rng-tools

开启/关闭 rng-tools服务:systemctl start/stop/status rng-tools

测试(关闭rng-tools 的话,耗时很大):dd if=/dev/random of=/dev/null bs=1024 count=1 iflag=fullblock

 

参考:

https://blog.csdn.net/fukai8350/article/details/80429978

https://www.2uo.de/myths-about-urandom/

https://wiki.archlinux.org/index.php/Rng-tools

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值