我在运行web服务器的apache中运行命令“ps aux | grep apache”。今天是11月25日,但是甚至还有从9月23日,10月10日等过程...... 共有10个人使用这个Web应用程序,但运行的apache进程数量(pgrep apache2 | wc -l)是138.当我在特定时刻拖动访问日志时,只有一个用户在5秒内请求页面间隔是因为ajax调用。
这里有什么问题?
答案 0 :(得分:0)
检查MaxRequestsPerChild配置。如果它不存在或等于0,那么每个php工作者都可以永远持续下去。
尝试设置
MaxRequestsPerChild 500
适用于小型应用。它会在服务500个请求后终止该进程。这样你就不应该让僵尸阿帕奇工人四处游荡。此外,您可能希望修改KeepAlive和KeepAliveTimeOut以更有效地使用生成的子级,但具有低超时和限制请求以保护您免受慢速http攻击
KeepAlive On
KeepAliveTimeout 2
MaxKeepAliveRequests 1000