我需要有经验的码头用户的建议。
我在负载均衡器(亚马逊云)后面维护了2台Linux机器(带有Jetty 9.0.3)。 有一段时间,我的Jetty容器因“Thread-2”而无缘无故地关闭。同时进行。
显示以下日志,容器无故停止。 没有错误。没有例外。优雅地关闭。 - 这已经很奇怪了! 但是......来自2台机器的2架喷气机同时正在下降...... ???
没有理由关闭日志(节点1):
2013-09-24 18:51:19.447:INFO:oejs.ServerConnector:Thread-2:已停止ServerConnector @ 22480241 {HTTP / 1.1} {0.0.0.0:2323} ...
2013-09-24 18:51:23.443:INFO:oejsl.ELContextCleaner:Thread-2:javax.el.BeanELResolver已清除 2013-09-24 18:51:23.443:INFO:oejsh.ContextHandler:Thread-2:停止oejwWebAppContext @ 5892d4a8 {/,文件:/ home / ec2-user / jetty / webapps / ROOT /,UNAVAILABLE} {/ ROOT }
没有理由关闭日志(节点2):
2013-09-24 18:51:22.152:INFO:oejs.ServerConnector:Thread-2:已停止ServerConnector @ ba4bb9 {HTTP / 1.1} {0.0.0.0:2323} ...
2013-09-24 18:51:25.605:INFO:oejsl.ELContextCleaner:Thread-2:javax.el.BeanELResolver已清除 2013-09-24 18:51:25.605:INFO:oejsh.ContextHandler:Thread-2:已停止oejwWebAppContext @ 460434 {/,file:/ home / ec2-user / jetty / webapps / ROOT /,UNAVAILABLE} {/ ROOT }
用于比较的正常关闭日志(start.jar --stop)
2013-09-25 16:25:16.993:INFO:oejs.ServerConnector:ShutdownMonitor:已停止ServerConnector @ ba4bb9 {HTTP / 1.1} {0.0.0.0:2323} ...
2013-09-25 16:25:21.049:INFO:oejsl.ELContextCleaner:ShutdownMonitor:javax.el.BeanELResolver已清除 2013-09-25 16:25:21.049:INFO:oejsh.ContextHandler:ShutdownMonitor:已停止oejwWebAppContext @ 460434 {/,file:/ home / ec2-user / jetty / webapps / ROOT /,UNAVAILABLE} {/ ROOT} < / p>
请注意,'Thread-2'没有明确原因停止服务器,而不是'ShutdownMonitor'线程。 可能会发生什么?除了使用--stop?
运行'start.jar'之外,是否有一些可以阻止容器的隐藏门?请帮忙!
更新
好吧,我发现如果我杀死进程而不是调用'stop',结果就是这样 是相同的......线程2。所以我相信linux正在扼杀我的进程。也许是OOM。 我正在研究。也许这个问题不再需要了。感谢
更新2:
错误是我在终端中启动了进程(没有&amp;),因此它在前台运行 - 绑定到该终端。当终端会话结束时,该过程终止。
雷沃