近日发现apache2.2有如下错误日志:
[Thu Mar 25 15:53:46 2010] [warn] Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting
[Thu Mar 25 16:09:26 2010] [warn] (OS 64)指定的网络名不再可用。 : winnt_accept: Asynchronous AcceptEx failed.
[Thu Mar 25 16:09:26 2010] [warn] (OS 64)指定的网络名不再可用。 : winnt_accept: Asynchronous AcceptEx failed.
[Thu Mar 25 16:09:43 2010] [warn] (OS 64)指定的网络名不再可用。 : winnt_accept: Asynchronous AcceptEx failed.
解决办法:
在httpd.conf文件中添加 Win32DisableAcceptEx 标记,如下:
<IfModule mpm_winnt.c>
ThreadsPerChild 1000
MaxRequestsPerChild 10000
Win32DisableAcceptEx
</IfModule>
这样可以允许并发连接更大一些。同时性能上也不会有明显的降低.