linux – MPM Prefork,apache2进程太多了?

前端之家收集整理的这篇文章主要介绍了linux – MPM Prefork,apache2进程太多了?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个设置:
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    ServerLimit      1250
    MaxClients            1250
    MaxRequestsPerChild   1500
</IfModule>

可能的是,当我做最好的时候,对于最小/最大服务器的5-10设置,有大量的apache 2进程?

它们不应该只在5-10之间吗?
只看260过程睡眠O_O(d * mn apache)

单击http://img200.imageshack.us/img200/3285/senzatitolo1iw.jpg

EDIT1:

在这里30分钟后,屏幕顶部:

点击:http://img816.imageshack.us/img816/1645/immagineov.png

UP 24小时后(MEM使用的最高订购者)

谢谢你的任何解释

(debian 6,灯,4gb ram)

解决方法

我在 Server not responding to SSH and HTTP but ping works评论中给了你答案,但显然你不相信我.真的,这是真的!

您需要将MaxClients / ServerLimit调整为您的系统.你提到的“最小/最大服务器的5-10设置”基本上是无关紧要的 – 这只是额外服务器的数量,而不是Apache将保留的任何东西.

为了正确设置MaxClients,请查看httpd(或apache2)进程的典型高水位标记,然后将可用内存除以.最好稍微下降,让系统的其余部分呼吸.由于你有4GB的RAM和185MB的进程,这意味着你的ServerLimit值最多应该是21 – 可能是20或19.

现在,可能190MB是非典型的.您可以根据对典型使用情况的不同估计将ServerLimit设置得更高,但是您基本上赌博的是您永远不会有峰值.如果确实发生了,您的系统将是out of memory.

如果你能找到一种方法来限制每个工人的内存使用量,那将是一场胜利.我打赌这是PHP Ate My RAM的情况.你能编写你的应用程序以生活在较低的memory_limit?如果你不能这样做,你需要一个不同的模型来运行你的PHP.如果你不能这样做,你需要购买更多的RAM.

猜你在找的Linux相关文章