最近阿里云的服务器因为开着http服务,经常因为没有内存出现 Out of memory: Kill process,运气不好kill掉了sshd之后, 服务器就只能重启了。
上google研究了一下, 找到了一些配置方法。记录一下,备忘。
sysctl vm.panic_on_oom=1
sysctl kernel.panic=X
echo "vm.panic_on_oom=1" >> /etc/sysctl.conf
echo "kernel.panic=X" >> /etc/sysctl.conf
上面配置可以让linux在出现 Out of memory之后重启。
echo -15 > /proc/2592/oom_adj
这会让 oom 在出现 Out of memory后,尽量不去kill这个进程。
echo 10 > /proc/2592/oom_adjoom
会优先考虑kill这个进程。
echo -17 > /proc/2592/oom_adj
oom在Out of memory时, 不会kill该进程。
oom_adj的值在-16 到 +15之间,值越高被kill的优先度越高,如果设为 -17, 这进程不会被kill掉。
sysctl vm.overcommit_memory=2
echo "vm.overcommit_memory=2" >> /etc/sysctl.conf
可以完全关掉oom, 不过这并不建议,关掉后可能会出现未知的情况。
相关推荐
linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能。 实现原理: 由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重启并写入日志。 crontab...
Linux平台 下 进程监控自动 重启 恢复脚本, 测试 centos平台下 java, springboot 通过
如何保证服务一直运行?如何保证即使服务挂掉了也能自动重启?在写服务程序时经常会碰到这样的问题。在Linux系统中,强大的shell就可以很灵活的处理这样的事务
或许是该进程已经挂死。总之这种情况是经常发生的。kill命令是通过向进程发送指定的信号来结束进程的。如果没有指定发送信号,那么默认值为TERM信号。TERM信号将终止所有不能捕获该信号的进程。至于那些可以捕获该...
Linux下的常驻进程的作用不可忽略,但这里面的问题也不能忽略,怎么启动进程,怎么结束进程,怎么在进程挂掉之后重启进程都要设计的合理。下面看一个shell控制的php常驻进程的例子。 不废话,直接捞干货,上代码,...
最近,发现个人博客的Linux服务器,数据库服务经常挂掉,导致需要重启,才能正常访问,极其恶心,于是决心开始解决问题,解放我的时间和精力(我可不想经常出问题,然后人工重启,费力费时)。 分析问题 发现问题...
mongod进程退出, 退出时数据库中记录大概1.2亿,数据库小大600G 错误信息如下: Sat May 12 08:37:18 Invalid access at address: 0x7ef6036a9000 Sat May 12 08:37:19 Got signal: 7 (Bus error). Sat May 12 08:...
经典的自动化运维脚本 checkNmp abiao原创,可以实现在nginx宕机时候杀死进程让它自动重启,在php挂掉或者502状态时候,自动检测到服务资源异常,杀死进程重启服务,MySQL重启服务等等、、、
总的来说,思想是让子进程accept并处理请求,父进程通过子进程发来的信息控制请求数与子进程数之间的关系。 代码如下: 代码如下: #include #include #include #include #include #include #include #...
1、将2000w名单保存到临时数据表2、用PHP程序每次从该表获取500个用户,检测完后生成SQL update原纪录3、为了防止PHP程序突然断掉,用shell脚本每隔1分钟检测,PHP挂掉了则重启我使用shell脚本作为守护进程的原因是...
今天下午网站宕了两次机,发工单给阿里云,发现原因是服务器...当然,这些不足以让服务器的 CPU 直接跑满挂掉,后来发现了两个大家伙: 当 mysql 的 CPU 消耗降下来之后,出现了两个奇怪的进程:kswapd0 和 events/0。
Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor...
LWP:light weight process 轻量级的进程,本质仍是进程(在Linux环境下) 进程:独立地址空间,拥有PCB 线程:也有PCB,但没有独立的地址空间(共享) 区别:在于是否共享地址空间。 独居(进程);合租(线程)。 ...
有些用户会使用直接断掉电源的方式来关闭Linux系统,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件...
linux进程保护脚本,防止进程异常挂掉。5s钟检测一次进程是否存在,如果不存在,自动启动进程。已测试,可以正常使用。
清华大学信息学院计算机系 目 录 前言..................................................................................................................................................2 第一讲 ...
AXD在RAM里调试,掉电就没有了,方便程序修改。调试好的程序再下到FLASH里,上电直接运行。 同类的软件还有很多,什么FLUTED了、FLSHP了都是,但FLASHPGM最好,要是有人还问FLASH不支持BIN格式文件的问题就要看我写...
在分析Linux操作系统现有的可信路径机制的基础上,采用阻止不可信进程对虚拟终端访问并且根据不同情况挂起、杀掉小部分进程的方法,提出了一种利用安全注意键实现的可信路径改进方案,提高了Linux可信路径机制的友好...
既然是linux,一般如果进程是被kill的话,var/log/messages,应该会有相关kill 日志,但是这里并没有看到什么信息。这里我们是虚拟机或容器可能这里的信息不准确? 是不是有些东西回收不掉 来看下java 的gc情况,...
现在是早晨6点钟。已经醒来的我正在总结到底是什么事情使得我的起床闹铃提前了这么多。故事刚开始的时候,手机铃声恰好停止。... 我们部署的监控系统发现进程已经挂掉了并重启了服务。由于现在咖啡因已经流淌在我的血