我正在运行一个Apache 2的Web服务器。 一切工作正常,但大约每14-20天我必须重新启动Web服务器,因为它不响应了。
看看慕尼黑的统计数字,我认识到,这与apache进程的数量有关。 他们不断增加,直到他们达到150.然后Apache没有回应。
我如何防止“冻结”阿帕奇?
这里是统计的截图:

细节:
日志和状态消息:
扩展的apache状态显示了这些行中的45个(通过SERVERNAME取代了真实的主机名)中的30个:
22-5 - 0/0/75 . 0.00 1813 0 0.0 0.00 1.17 ::1 SERVERNAME OPTIONS * HTTP/1.0
一些Apache设置(默认设置):
这看起来像你有一些永不终止的请求,迫使Apache产生新的进程,直到达到configuration的最大值。 之后,Apache无法为新的请求创build新的进程,并显示死亡。
用您提供给我们的less量数据来说明可能会导致这种情况是不可能的。
你看到日志文件中的提示吗? 什么样的页面给你服务的客户? 静态HTML,PHP,CGI或其他东西? 在什么操作系统?
你当然不应该看到这种行为 – 这意味着你的系统中有些东西是非常坏的。
你有什么设置:
Timeout KeepAlive MaxKeepAliveRequests KeepAliveTimeout MaxRequestsPerChild ServerLimit MaxClients
?
这是前叉或线程的Apache?
但是,这个问题在其他地方出现的可能性更大。 apache是否使用任何脚本/应用程序引擎? 如果是这样的话? 它是如何configuration的?