共计 306 个字符,预计需要花费 1 分钟才能阅读完成。
服务器频繁出现应用掉线,查了查服务器日志,发现是被 oom-kill 给 kill 了.
这个 oom-kill 是 linux 默认的一个保护机制,大概作用就是当系统的 CPU 或者内存达到一定程度,为了避免宕机,他会自动 kill 掉消耗大户,然后重启它,从而保证服务器的正常稳定。
但是这个东西有时候就很棘手,可能只是临时性的冲高几次,他就给 kill 了,导致服务掉线。
此时有两个办法来解决:
1、直接关闭该服务:
sysctl -w vm.panic_on_oom=1(默认为 0,表示开启)sysctl -p
2、根据进行 pid,进行过滤,指定某一个程序不被 kill:
echo -17 > /proc/<pid>/oom_adj //-17 表示禁用 OOM
正文完
加入官方交流QQ群:778957856