关于tomcat 启动慢,访问服务器响应慢。

今天再部署服务的的时候,遇到一个问题, 项目在服务器部署了后, 每次项目启动的时候 访问要很长时间才会有数据响应,这个问题刚刚找了很长时间,刚开始以为是服务器的问题,因为项目部署到另外一台服务器上没出现这样的问题,因为公司的服务器用的是阿里云,而且这项目就是我一个人负责, 我问过公司的大神,都说没有遇见过这样的问题,然后找阿里云人工,他们也是没办法, 说可能是项目问题。

最后在日志上看到,每次项目启动的时候都会创建一个东西,这个东西就是

securerandom.source=file:/dev/random 

securerandom.source=file:/dev/urandom

 /dev/random 和 /dev/urandom 这两种不同的文件,前者在不产生随机数时会阻塞当前的程序, 直到生产新的随机数之后,才会有返回, /dev/random这种文件会残生大量的随机数,

这样自然而然就慢了。

这种解决的办法:

1.可以在Tomcat种解决Entropy Source

在 catalina.sh 中加入这么一行:-Djava.security.egd=file:/dev/./urandom 即可。

2.是直接改jdk里面的

打开 $JAVA_PATH/jre/lib/security/java.security 这个文件,找到下面的内容:

securerandom.source=file:/dev/random

替换成:

securerandom.source=file:/dev/./urandom,

然后重启服务。

这个如果服务器运行内存大的话, 可能没有这个问题,

当然还可能有别的原因,我这里是这个原因。

你可能感兴趣的:(关于tomcat 启动慢,访问服务器响应慢。)