日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

SpringBoot系列: SpringBoot 启动慢的问题

發布時間:2025/4/5 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringBoot系列: SpringBoot 启动慢的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SpringBoot 應用啟動速度往往很快, 但在某些Linux 服務器上可能會很慢, 可能超過1分鐘, 有時候甚至啟動不起來.

下面過程耗時太長:
IdGeneratorBase: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [140,108] milliseconds.


原因是SpringBoot在生成Session Id時候會使用 SecureRandom 這個jre工具類, 以生成足夠安全的隨機數. 最終會用到在Linux的 /dev/random 這個阻塞型數字生成器, 它的特點是使用鼠標和鍵盤以及磁盤信息來產生熵, 但對于Linux 服務器, 鼠標和鍵盤活動可能會很少, 就有可能阻塞整個SpringBoot啟動.


解決辦法是, 替換 /dev/random 為 /dev/./urandom. 具體為:

方法一: 適合外置tomcat:
在tomcat 的 catalina.sh 中增加下面的 JAVA_OPTS:
-Djava.security.egd=file:/dev/./urandom

方法二: 適合外置或內置tomcat:
修改 $JAVA_PATH/jre/lib/security/java.security 文件,
將 securerandom.source=file:/dev/random 替換為下面一行:
securerandom.source=file:/dev/./urandom

總結

以上是生活随笔為你收集整理的SpringBoot系列: SpringBoot 启动慢的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。