java进程因机器内存不足被系统kill的定位

查看日志发现进程被killer了,history未发现kill记录,说明不是人工杀死。查看机器内存使用监控发现当时机器内存使用100%。怀疑是被系统杀死了,linux可以设置内存用尽时根据得分杀死一些进程的OOM killer特性(损失最少的工作,释放最大的内存同时不伤及无辜的用了很大内存的进程,并且杀掉的进程数尽量少)。

查看/var/log/messages发现的确是被系统杀死了。

我们这个java设置了很大的堆,但是实际使用的很少,而且因为启动了很多的线程,占用虚拟内存也比较高,得分比较高,从而在系统内存不足的情况下被优先杀掉了。

用户可以对得分进行调整,因为这个机器基本上只有我们的程序在用所以不能这么干,只好错开程序运行时间避免峰值。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值