记一次tomcat自动退出问题

Posted 小鸣的网络日志

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次tomcat自动退出问题相关的知识,希望对你有一定的参考价值。

问题

环境: centos/tomcat8/jdk1.8

最近遇到部署在服务器的tomcat总是过一段时间就自动结束进程 ;
通过监控tomcat 日志文件(tail -f ./logs/catalina.out)并没有发现有任何异常

分析解决

  • 通过网络搜索是因为可能是由于Linux OOM Killer导致
  • 监控/var/log/messages 发现确实由于这种原因
tail -f /var/log/messages
...
Jun 17 15:31:00 robinjzy kernel: Out of memory: Kill process 17404 (java) scd
Jun 17 15:31:00 robinjzy kernel: Killed process 17404 (java) total-vm:235268ile-rss:0kB, shmem-rss:0kB
...

Linux OOM Killer的描述中有这样一句话
Any particular process leader may be immunized against the oom killer if the value of its /proc//oomadj is set to the constant OOM_DISABLE (currently defined as -17).

如果将其/proc//oomadj的值设置为常量OOM_DILD(当前定义为-17),则可以对任何特定的进程领导人进行OOM杀手免疫。

依此做为解决的依据;

解决


以上是关于记一次tomcat自动退出问题的主要内容,如果未能解决你的问题,请参考以下文章

记一次 go-micro 服务异常退出问题的根因分析

记一次Tomcat运行失败记录

记一次nginx 500

记一次web系统漏洞整改过程(nginx+Tomcat)

记一次nginx代理两个tomcat

记一次服务器Tomcat优化经历