自从前几天将XPOWER LAB & DSWLAB的论坛转到公司服务器后,机器总是间歇性抽疯,一会儿Apache负载高,一会儿MySQL负载高,今晚干脆试着优化调整了Apache和MySQL的参数。
但让我生气的是,从凌晨一点多一直到现在,我一直被一个ServerLimit的参数困扰着,明明设置了ServerLimit 2000,可我apache2ctl restart的时候,总是提示:
[Fri Dec 29 02:55:50 2006] [notice] SIGHUP received. Attempting to restart
WARNING: MaxClients of 1500 exceeds ServerLimit value of 256 servers,
lowering MaxClients to 256. To increase, please see the ServerLimit
directive.
[Fri Dec 29 02:55:50 2006] [warn] WARNING: Attempt to change ServerLimit ignored during restart
[Fri Dec 29 02:55:50 2006] [notice] Apache configured -- resuming normal operations
从手册上找不到半点头绪,Google了半天,才在一篇文章里看到一段话:
ServerLimi和ThreadLimit这两个指令决定了活动子进程数量和每个子进程中线程数量的硬限制。要想改变这个硬限制必须完全停止服务器然后再启动服务器(直接重启是不行的)。