如何知道
安装方式
![](/icons/21980dou.gif)
每个httpd进程占用多大内存比较合理
![](/icons/21980dou.gif)
反正我这个10M肯定是大了
![](/icons/21980dou2.gif)
![](/icons/21980dou2.gif)
![](/icons/21980dou2.gif)
模块安装应该取最小集合:http://hi.baidu.com/thinkinginlamp/blog/item/d677cffc1e083d83b901a016.html
再来看看work模式
![](/icons/21980dou.gif)
缺省参数
![](/icons/21980yi.gif)
般如下:
<IfModule mpm_worker_module>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
Worker 由主控制进程生成“StartServers”个子进程
![](/icons/21980dou.gif)
每个子进程中包含固定
![](/icons/21980de.gif)
ThreadsPerChild线程数
![](/icons/21980dou.gif)
各个线程独立地处理请求
![](/icons/21980dou2.gif)
同样
![](/icons/21980dou.gif)
为了不在请求到来时再生成线程
![](/icons/21980dou.gif)
MinSpareThreads和MaxSpareThreads设置了最少和最多
![](/icons/21980de.gif)
空闲线程数;而MaxClients 设置了同时连入
![](/icons/21980de.gif)
clients最大总数
![](/icons/21980dou2.gif)
如果现有子进程中
![](/icons/21980de.gif)
线程总数不能满足负载
![](/icons/21980dou.gif)
控制进程将派生新
![](/icons/21980de.gif)
子进程
![](/icons/21980dou2.gif)
MinSpareThreads和 MaxSpareThreads
![](/icons/21980de.gif)
最大缺省值分别是75和250
![](/icons/21980dou2.gif)
这两个参数对Apache
![](/icons/21980de.gif)
性能影响并不大
![](/icons/21980dou.gif)
可以按照实际情况相应调节
![](/icons/21980dou2.gif)
ThreadsPerChild是worker MPM中和性能相关最密切
![](/icons/21980de.gif)
指令
![](/icons/21980dou2.gif)
ThreadsPerChild
![](/icons/21980de.gif)
最大缺省值是64
![](/icons/21980dou.gif)
如果负载较大
![](/icons/21980dou.gif)
64也是不够
![](/icons/21980de.gif)
![](/icons/21980dou2.gif)
这时要显式使用 ThreadLimit指令
![](/icons/21980dou.gif)
它
![](/icons/21980de.gif)
最大缺省值是20000
![](/icons/21980dou2.gif)
Worker模式下所能同时处理
![](/icons/21980de.gif)
请求总数是由子进程总数乘以ThreadsPerChild 值决定
![](/icons/21980de.gif)
![](/icons/21980dou.gif)
应该大于等于MaxClients
![](/icons/21980dou2.gif)
如果负载很大
![](/icons/21980dou.gif)
现有
![](/icons/21980de.gif)
子进程数不能满足时
![](/icons/21980dou.gif)
控制进程会派生新
![](/icons/21980de.gif)
子进程
![](/icons/21980dou2.gif)
默认最大
![](/icons/21980de.gif)
子进程总数是16
![](/icons/21980dou.gif)
加大时也需要显式声明ServerLimit(最大值是20000)
![](/icons/21980dou2.gif)
需要注意
![](/icons/21980de.gif)
是
![](/icons/21980dou.gif)
如果显式声明了ServerLimit
![](/icons/21980dou.gif)
那么它乘以 ThreadsPerChild
![](/icons/21980de.gif)
值必须大于等于MaxClients
![](/icons/21980dou.gif)
而且MaxClients必须是ThreadsPerChild
![](/icons/21980de.gif)
整数倍
![](/icons/21980dou.gif)
否则 Apache将会自动调节到
![](/icons/21980yi.gif)
个相应值
延伸阅读
最新评论