线上系统查看java进程是如何被杀掉的

本文记录了一次线上Java业务系统因Linux系统内存不足而被自动终止的经历。通过查看Linux系统日志,确定了是由于内存资源耗尽触发了内核的OOM killer机制,最终导致Java进程被强制结束。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

线上服务器部署了一个java业务系统,今天突然发现进程不在了,查看java系统错误日志、gc日志都没有发现任何问题。奇怪之下,只能查看linux的系统日志——message,在这里面找到了导致java进程被杀的真凶。

进入/var/log目录,看到了有如下的message日志:

-rw-------  1 root  root      11174 Sep 25 22:05 messages
-rw-------  1 root  root      47851 Sep  3 02:46 messages-20170903
-rw-------  1 root  root      59019 Sep 10 03:04 messages-20170910
-rw-------  1 root  root      45481 Sep 17 03:14 messages-20170917
-rw-------  1 root  root      75629 Sep 24 03:20 messages-20170924

查看其中一天的日志(java进程杀掉的时间):

# cat messages-20170924 | grep ttbrain
Sep 21 14:29:39 ttAlgorithm-tomcat-online073-jylt kernel: ttbrain-recomme invoked oom-killer: gfp_mask=0x280da, order=0, oom_adj=0, oom_score_adj=0
Sep 21 14:29:39 ttAlgorithm-tomcat-online073-jylt kernel: ttbrain-recomme cpuset=/ mems_allowed=0
Sep 21 14:29:39 ttAlgorithm-tomcat-online073-jylt kernel: Pid: 15018, comm: ttbrain-recomme Tainted: G        W  ---------------    2.6.32-504.12.2.02.abc.el6.x86_64 #1
Sep 21 14:29:39 ttAlgorithm-tomcat-online073-jylt kernel: [14958]     0 14958 15254513 12668994   0       0             0 ttbrain-recomme
Sep 21 14:29:39 ttAlgorithm-tomcat-online073-jylt kernel: Out of memory: Kill process 14958 (ttbrain-recomme) score 956 or sacrifice child
Sep 21 14:29:39 ttAlgorithm-tomcat-online073-jylt kernel: Killed process 14958, UID 0, (ttbrain-recomme) total-vm:61018052kB, anon-rss:50675972kB, file-rss:4kB

可以看到,是由于linux系统内存不足,从而把java进程杀掉了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赶路人儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值