0

一切都运行良好,然后在 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,通常要低得多。

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

我想知道是否可能更改了其他一些设置会导致这种情况发生?或者,如果有人有任何其他想法,我将非常感激。

4

1 回答 1

0

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

W 一直在积累,直到我们不断达到 MaxClients。这个问题可能在某种程度上一直存在,但在升级期间和/或升级期间由于配置设置的某种变化而加剧,我不确定。但是,我确信我们通过稍微更改代码来修复它,以便进程在设定的时间段后死亡,而不是等待一定数量的循环发生。话虽如此,使用某种脚本来杀死从裂缝中溜走的陈旧进程,然后记录它们可能是一个好主意。

如果上述链接出现故障,您将需要通过命令行检查您的进程,使用:

服务 httpd fullstatus > outputfile.txt

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

于 2013-06-12T21:26:37.557 回答