Tomcat 7在使用JDK 7时突然关闭

3
在我们的开发环境中,我们有两个Tomcat 7.0.22节点在Cent OS 5.5上,并由F5负载均衡器处理带有粘性会话。我们最近升级到JDK 7,并开始观察到随机的Tomcat关闭。多个war从共享加载器目录部署。关闭期间的模式如下:
  • 在大多数情况下,两个节点一个接一个地关闭。在一个场景中,一个tomcat死亡,而另一个仍然存在。
  • catalina日志表明,在打印“INFO:Stopping service Catalina”后,关闭是优雅的。
  • 我们找不到任何System.exit调用
  • 没有OOM的迹象
  • 我们向Spring容器添加了一个关闭挂钩,线程转储没有引发任何可疑的线程。
  • 没有在后台运行的看门狗服务
  • 观察到etc/lograte.d下的一个脚本旋转日志
  • 8080的HTTP 1.1连接器,重定向8443
  • 8009的AJP,重定向8443

我已经无法调试此问题。基本上,我正在寻找一个钩子或调试器,让我知道确切的进程或线程已调用关闭。这应该是可能的,因为它是一个优雅的关闭,Tomcat已处理它。

我们将大多数情况下恢复到JDK 1.6并测试几天。在此期间,任何帮助或指针都将不胜感激

提前致谢!


你的陈述“多个WAR包从共享加载器目录部署”没有任何意义:WAR包不是从“共享加载器目录”(无论它们是什么)加载的。你能澄清一下吗? - Christopher Schultz
嗨,Chris,我的意思是,war配置存储在tomcat/conf/Catalina/localhost/*.xml中,并且所有共享jar的路径在tomcat/conf/catalina.properties下的“shared.loader”中指定。 - user2156307
关于这个问题:“在etc/lograte.d下观察到一个脚本,用于旋转日志”。你如何实际旋转你的日志? - Christopher Schultz
1个回答

1

既然你提到了logrotate,你是否尝试手动运行logrotate [ /usr/sbin/logrotate /etc/logrotate.conf ] 并观察它是否导致了关机?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接