springboot 应用在 linux 上启动缓慢

本文探讨了SpringBoot应用在Linux服务器上启动时间过长的问题,原因在于随机数种子生成慢。解决方案是将默认的阻塞式熵池改为非阻塞式熵池,可以通过修改JDK的随机数策略或者在启动命令中指定使用`/dev/./urandom`。注意,`/dev/urandom`可能仍无法解决问题,应当使用`/dev/./urandom`以确保更快的启动速度。
摘要由CSDN通过智能技术生成

背景: springboot 应用在本机启动耗时 27 秒, 部署到 Linux 服务器启动耗时却需要 70 秒
原因: 随机数种子生成慢导致的
解决: 将阻塞式熵池修改为非阻塞式熵池
第一种方式
编辑 jdk 中的随机数策略

vim $JAVA_HOME/jre/lib/security/java.security
# securerandom.source=file:/dev/random
securerandom.source=file:/dev/./urandom

第二种方式
在启动 jar 时, 指定随机数策略

java -Djava.security.egd=file:/dev/./urandom xx.jar

结束语:
需要注意的是指定的配置值是 file:/dev/./urandom 而不是 file:/dev/urandom (file:/dev/urandom 可能仍然无法解决启动缓慢的问题)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值