【问题标题】:Tomcat 7 shuts down abruptly with JDK 7Tomcat 7 使用 JDK 7 突然关闭
【发布时间】:2013-06-06 12:19:59
【问题描述】:

在我们的开发环境中,我们在 Cent OS 5.5 上有 2 个 Tomcat 7.0.22 节点,由 F5 负载均衡器和粘性会话处理。我们最近升级到 JDK 7 并开始观察随机的 tomcat 关闭。从公共共享加载器目录部署多个战争。关机时的模式如下

  • 在大多数情况下,两个节点一个接一个地关闭。在一种情况下,一只 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 不是从“共享加载程序目录”(无论它们是什么)加载的。你能澄清一下吗?
  • 嗨,克里斯,我的意思是,战争配置存储在 tomcat/conf/Catalina/localhost/*.xml 中,所有共享 jar 的路径在“共享”下的 tomcat/conf/catalina.properties 中指定.loader"
  • 这个怎么样:''在 etc/lograte.d 下观察到一个脚本旋转日志''。您实际上是如何轮换日志的?

标签: linux tomcat java-7


【解决方案1】:

既然你提到了logrotate,你有没有试过手动运行logrotate [ /usr/sbin/logrotate /etc/logrotate.conf ] 看看它是否负责关机?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-15
    • 1970-01-01
    相关资源
    最近更新 更多