一切运行良好,然后将MySQL从5.0升级到5.1,然后再升级5.5,这有些问题(一些表前缀被弄乱了,数据丢失了一点,但是没什么大不了的),我们就遇到了这个新问题出乎意料。

据我所知,Apache(httpd.conf),MySQL(my.cnf)或PHP(php.ini)的配置设置均未更改。

我检查了升级之前的Apache日志,而我们根本没有使用MaxClients。

现在我们一直都打它(一天中有9次!),当我们完成服务器上的所有网页后,它们完全变得不可访问,需要重新启动Apache-在我完成重新启动之前,它们似乎再也无法访问,尽管可以我真的不想等一下,看看它是否会消失。

以前,我们的MaxClients和ServerLimit设置为1000-我将其设置为3000,尽管到达MaxClients的频率似乎有所下降,但这种情况仍在发生。我们有96.0 GB的RAM,使用量永远不会超过30 GB,通常要低得多。

我检查了之前和之后的日志,机器人爬网活动似乎大致相同。

我想知道是否可以更改某些其他设置,导致发生这种情况?或者,如果有人有其他想法,我将非常感谢。

最佳答案

我们有一个“ PBS”案例:http://techmythsworld.blogspot.com/2011/11/solving-httpd-maxclients-and-modstatus.html

W一直在累积,直到我们不断达到MaxClients。该问题可能一直存在,但是在升级期间和/或升级前后,由于配置设置的某种更改而加剧了该问题。但是,我确信我们可以通过稍稍更改代码来解决该问题,以使进程在设置的时间段后会死,而不是等待一定数量的循环发生。话虽这么说,最好有某种脚本来杀死掉在裂缝中的陈旧进程,然后记录下来。

如果上述链接断开,您将需要通过命令行利用以下方法检查进程:


  
    服务httpd fullstatus> outputfile.txt
  


如果看到W的堆积,请向下滚动,如果发现一个或两个脚本占大多数,则这些脚本很可能是您的罪魁祸首。为确保累积合法,您可能需要检查一次,然后在一个小时后再检查一次,看是否继续进行。您会注意到W的SS不断增加(自最近请求开始以来的秒数)。

关于mysql - 在MySQL升级后,服务器达到MaxClients连续发生,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17055561/

10-13 02:07