Linux OOM killer

Linux内核有个机制叫OOM killer(Out-Of-Memory killer),该机制会监控那些占用内存过大,尤其是瞬间很快消耗大量内存的进程,为了防止内存耗尽,内核会把该进程杀掉,监控是正常的。
防止重要的系统进程触发(OOM)机制而被杀死:可以设置参数/proc/PID/oom_adj为-17,临时关闭linux内核的OOM机制。

保护某个进程不被内核杀掉可以这样操作:

echo -17 > /proc/$PID(进程的PID)/oom_adj

或者通过修改内核参数禁止OOM机制

sysctl -w vm.panic_on_oom=1
vm.panic_on_oom = 1 //1表示关闭,默认为0表示开启OOM
sysctl -p

End

Linux OOM killer

上一篇:未能加载文件或程序集“Newtonsoft.Json.Net35”或它的某一个依赖项。参数错误。 (异常来自 HRESULT:0x8007


下一篇:Linux操作篇之LAMP(二)