+ -
当前位置:首页 → 问答吧 → 请教Zend Core如何增加apache的侦听进程数量

请教Zend Core如何增加apache的侦听进程数量

时间:2009-12-20

来源:互联网

运行环境,
redhat AS 4 64位的
Linux hostname 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:56:44 EST 2007 x86_64

apache用了ZendCore 2.5.2 64位内置的apache

apache 配置
<IfModule prefork.c>
ServerLimit 20000
StartServers 30
MinSpareServers 30
MaxSpareServers 40
MaxClients 4000
MaxRequestsPerChild 10000
</IfModule>
配置上,我是希望能启动4000个进程,但这个配置是无法生效的。最多启动1024个进程
网站流量比较大,业务高峰经常出现进程数量全部消耗的情况

但ZendCore 的GUI如下,业务高峰期我看过,只有1024个进程,无法突破,造成大量客户排队等待,慢的要死,而这时服务器资源消耗并不厉害

Multitasking model Prefork (forked: yes, threaded: no)
Max Daemons 1024
Running Processes 50
Idle Processes 45


我测试过,当配置低于1024个进程时,apache的进程配置是可以工作的,设500,确实最多500个进程。

我看了下ZendCore 自带apache的模块,只有prefork.c,没worker.c,而且zendcore的很多模块都是线程non-safe的
就是说无法用worker线程管理了

那怎么突破1024个进程的限制呢? 或者还有其他OS的参数要设置,才能突破??

作者: tenshou001   发布时间: 2009-12-20