我经常在我的VPS ubuntu服务器上耗尽内存.我希望有一种方法可以在内存开始耗尽时简单地重启apache2,因为这似乎可以解决问题.或者我只是懒得解决这个问题?我在服务器上的内存有限……
好的,更多信息:
我正在运行apache2 prefork,这是我的内存设置(我一直在调整它们……):
StartServers 3 MinSpareServers 1 MaxSpareServers 5 MaxClients 150 MaxRequestsPerChild 1000
VPS有1 GB的ram,运行ubuntu 11.04 32位.
至于脚本,我有一个带有5个博客的wordpress网络,一个AskBot(一个python / django stackexchange克隆)的安装,以及一个未真正使用的Mediawiki安装.还有一个自制的mp3脚本访问getid3库以显示播客列表的信息,它似乎抛出一些PHP错误,不知道这是否是罪魁祸首……
Monit可以做到这一点.
您可以使用配置行,例如:
check process apache with pidfile "/var/lock/apache/httpd.pid" start program = "/etc/init.d/httpd start" with timeout 60 seconds stop program = "/etc/init.d/httpd stop" if 2 restarts within 3 cycles then timeout if totalmem > 100 Mb for 5 cycles then restart if children > 255 for 5 cycles then stop if cpu usage > 95% for 3 cycles then restart if Failed port 80 protocol http then restart group server depends on httpd.conf,httpd.bin
(自this config example on monit.com起修改)
这可能会影响前面提到的ulimit选项.
重启服务是一个绑定.你应该试着找出它泄漏记忆的原因.
原文地址:https://www.jb51.cc/ubuntu/348214.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。