我有一个通过NFS访问源代码的Apache服务器(从一个单独的专用NFS文件服务器)。 Apache服务器定期地停止接受新的请求(有效地closures服务器),当我查看它时,它将填充MaxClients。 经过进一步的研究,这个网站并不是那么繁忙…堆栈填满的原因是每个Apache进程都处于“发送回复”状态(所有的W都通过mod_status)。 除此之外,每个apache进程都处于“lockf”状态,这使我认为这是一个NFS问题。 我在网上找不到很多关于这方面的信息,本周末我一直在试图弄清楚这件事。 有没有人对可能发生的事情有任何想法,或者我可以如何进一步诊断问题?
非常感谢!
詹姆斯耶鲁是正确的。 你目前正在遭受可怕的“多毛布什综合症”(没有人喜欢永远与“W”卡在一起)。 总之,你必须找出哪个脚本“被困在W中”,并找出哪些variables被传递给脚本,导致locking。 这里是一个非常好的文章,应该帮助: 解决Httpd MaxClients和国防部状态“卡在W”
我们刚刚遇到了类似症状的问题,服务器到达MaxClients,然后apache进程数量不下降,新客户端无法连接。
看来这个问题是由我们的Web应用程序和Apache上的MaxClients设置的交互造成的。 在ServerFault上,我被另一个问题指向了正确的方向: Apache到达MaxClients并locking服务器
编辑:顺便说一句,因为我们不能修复我们的应用程序,我们必须解决增加更多的Web服务器和解除MaxClients设置。
如果您的日志正在写入您的nfs服务器,请确保您指定Lockfile指令在本地磁盘上。