记一次tomcat应用启动超慢事故

       四台服务器做数据库集群,应用是单节点,拉到机房前四台机器应用和数据库集群已经测试了半个月问题都解决了,拉到机房所有配置都没改过,包括内网ip都是和之前一样,硬件也没变,唯一变的是台交换机.

   数据库集群正常启动,到启动应用时非常慢,平时30s起来,这下半个小时都起不来,debug日志也不报错,日志打的也很慢,改了/dev/urandom随机数相关的配置也不行,还是慢,在java.security和catalina.sh都改了并没有用

   换数据库,装单节点数据库,跟应用装一台机器,换jdk,重新打包,都没用,也没有报错信息,只有远程监控下jvm了,开启远程端口,在堡垒机用visualVM查看jvm状态,发现两个线程交替block,如图:

记一次tomcat应用启动超慢事故

记一次tomcat应用启动超慢事故

堆栈dump一下,发现其中交替的一个线程dump如图:

记一次tomcat应用启动超慢事故

BD一下,试着改一下host,将127.0.0.1 后面加上本机名

竟然成功了!!!

记一次tomcat应用启动超慢事故