修改httpd.conf文件
<IfModuleprefork.c>
StartServers8
MinSpareServers5
MaxSpareServers20
MaxClients150
MaxRequestsPerChild1000
</IfModule>
修改
MaxClients150
为
ServerLimit2000
MaxClients2000
如果没有<IfModuleprefork.c></IfModuleprefork.c>部分则需添加注:相关命令
ServerLimit指令
说明 | 服务器允许配置的进程数上限 |
---|
语法 | ServerLimitnumber |
---|
默认值 | 参见下面的说明 |
---|
作用域 | serverconfig |
---|
状态 | MPM |
---|
模块 | prefork ,worker |
---|
对于prefork
MPM,这个指令设置了MaxClients
最大允许配置的数值。对于worker
MPM,这个指令和ThreadLimit
结合使用设置了MaxClients
最大允许配置的数值。任何在重启期间对这个指令的改变都将被忽略,但对MaxClients
的修改却会生效。
使用这个指令时要特别当心。如果将ServerLimit
设置成一个高出实际需要许多的值,将会有过多的共享内存被分配。如果将ServerLimit
和MaxClients
设置成超过系统的处理能力,Apache可能无法启动,或者系统将变得不稳定。
对于prefork
MPM,只有在你需要将MaxClients
设置成高于默认值256的时候才需要使用这个指令。要将此指令的值保持和MaxClients
一样。
对于worker
MPM,只有在你需要将MaxClients
和ThreadsPerChild
设置成需要超过默认值16个子进程的时候才需要使用这个指令。不要将该指令的值设置的比MaxClients
和ThreadsPerChild
需要的子进程数量高。
注意
Apache在编译时内部有一个硬限制"ServerLimit20000
"(对于prefork
MPM为"ServerLimit200000
")。你不能超越这个限制。