原创日志

win2003服务器中apache2.4重启造成apache假死问题解决方法

[ 2020-11-16 11:07:33 | 作者: admin ]
字号: | |
运行环境:
apache2.4 + mod_fcgid + php5.4 nts

故障现象:
修改httpd.conf之后重启apache,出现apache假死,访问网站无响应。

分析日志:
出现大量 mod_fcgid: can't apply process slot for php-cgi.exe 错误,看来是php-cgi.exe进程数满不能增加新的进程导致。
看上去似乎可以增加配置文件中 FcgidMaxProcesses 参数来增加进程,但是此服务器内存不大,数十万PV应该还不至于。一个php-cgi进程占15M内存,200个进程需要3G内存。实际上目前的进程数量是够用的,问题是重启apache的时候,php-cgi进程没有自动结束,应该是受制于它自己的生命周期。虽然进程失效却不能马上结束,所以导致新进程不能产生,旧进程又失效了。

解决办法:
重启服务器的时候,同时结束掉所有的php-cgi.exe进程

windows下批量杀死进程,使用命令taskkill可将这些进程一下子全部杀光:
taskkill /F /im php-cgi.exe
[最后修改由 admin, 于 2020-11-16 11:25:30]
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2729

这篇日志没有评论。

此日志不可发表评论。