目录
tomcat无故自动关闭。
/    

tomcat无故自动关闭。

查看tomcat的日志,没有找到相关异常导致停止的原因

在网上看到,直接查看linux的日志信息

路径在 /var/log/ 路径下的messages

查看该文件

Apr  9 08:24:10 xxxx kernel: Out of memory: Kill process 21180 (java) score 301 or sacrifice child
Apr  9 08:24:10 xxxx kernel: Killed process 21180 (java) total-vm:2747000kB, anon-rss:584756kB, file-rss:0kB, shmem-rss:0kB

操作系统(operating system)构建在进程(process)的基础上, 进程由内核作业(kernel jobs)进行调度和维护,其中有一个内核作业称为 “Out of memory killer(OOM终结者)”,Out of memory killer 在可用内存极低的情况下会杀死某些进程。只要达到触发条件就会激活,选中某个进程并杀掉。 通常采用启发式算法,对所有进程计算评分(heuristics scoring),得分最低的进程将被 kill 掉。 Out of memory: Kill process or sacrifice child 既不由JVM触发,也不由JVM代理,而是系统内核内置的一种安全保护措施。如果可用内存(含swap)不足, 就有可能会影响系统稳定,这时候 Out of cat /proc/23054/oom_score_adjmemory killer 就会设法找出流氓进程并杀死他,也就是引起 Out of memory: kill process or sacrifice child 错误。

作者:cherishpf
链接:https://www.jianshu.com/p/8181280ffad4
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

防止杀死进程参考:https://www.cnblogs.com/GoodGoodWorkDayDayUp/p/3473348.html

找到tomcat进程的pid

netstat -tlnp 

查看值

cat /proc/23054/oom_score_adj

减小这个值,值越小越不容易被杀死

echo -15 > /proc/2196/oom_score_adj

查看linux的内存指令 free -h