浏览器访问服务器项目加载时间过长

 

环境参数

  • CentOS7
  • JDK1.8
  • MYSQL8
  • 应用是Spring boot框架的(内嵌式tomcat)jar文件

问题

通过命令:nohup java -jar XXXX.jar &  或其他方式启动项目后,通过浏览器访问网站响应十分的缓慢,网页图片和css等静态资源加载的十分缓慢(网站登录更是需要好几分钟才能完全加载完毕)。

分析

后在Google浏览器搜索了一下(已),搜索需用英文,类似问题看来不是个例呀,甚至JDK bug列表汇中就有相似的bug,如JDK-6521844 : SecureRandom hangs on Linux Systems,但这些bug都标记为fixed。但明显没有完全fix掉啊。然后继续找,原来

Avoiding JVM Delays Caused by Random Number Generation

How do I make Tomcat startup faster?

正好记录了这个随机数生成慢的原因和解决方案。

原因:Java随机数生成依赖熵源(Entropy Source),默认的阻塞型的 /dev/random熵源可能导致阻塞,而换一个非阻塞的 /dev/urandom的熵源就可以了。

解决:

进入你的JAVA_HOMEjre目录下找到并vim编辑这个文件:

$JAVA_HOME/jre/lib/security/java.security  

找到以下这一行

securerandom.source=file:/dev/random

改之前:

securerandom.source=file:/dev/random 

改之后

securerandom.source=file:/dev/urandom

 

然后保存修改就OK了!

 

你可能感兴趣的:(linux)