海运的博客

Apache运行模式选择prefork和worker

发布时间:May 22, 2012 // 分类:Apache // No Comments

prefork是Unix平台上默认的MPM,编译时可使用参数./configure –with-mpm=worker自定义。
查看当前MPM:

#https://www.haiyun.me
httpd -V|grep mpm
 -D APACHE_MPM_DIR="server/mpm/prefork"

prefork采用预派生子进程方式,用单独的子进程来处理不同的请求,每个进程时间内只能维持一个连接,进程之间彼此独立。
prefork配置:

<IfModule prefork.c>
ServerLimit      256 #服务器端连接数限制,最大2000
StartServers       8 #初始启动8个进程
MinSpareServers    5 #最小空闲进程数
MaxSpareServers   20 #最大空闲进程数,超过限制父进程将杀死多余的子进程。
MaxClients       256 #最大连接、进程数,一般和ServerLimit相同,超过此限制的请求进入等候队列。
MaxRequestsPerChild  4000 #每个进程生存期间可处理请求次数,超过终结此进程。
</IfModule>

worker支持多线程和多进程混合模型的MPM,使用多线程来处理,可以处理相对大量的请求,而系统资源的开销要小于基于prefork的服务器。
worker配置:

<IfModule worker.c>
StartServers         10 #默认启动子进程数
MaxClients         150 #同一时间最大连接数
MinSpareThreads     25 #最小空闲线程数
MaxSpareThreads     75 #最大空闲线程数
ThreadsPerChild     25 #每个进程建立的常驻线程数
MaxRequestsPerChild  40000 #每个进程生存期间可处理请求次数,超过终结此进程。
</IfModule>
分类
最新文章
最近回复
  • zr: 大佬,这个bash-completion是从哪个源搞到的
  • 姚生: 要要下载
  • 阿东: 我在编译树莓派的时候也遇到同样的问题,后来发现是make menuconfig 的时候忘了带环...
  • crowjin: 你确定这能过滤??不是所有请求都返回空地址::?
  • : linux系统上单个网卡多条宽带拨号获取公网IP,外网可以访问这些IP,有偿! Q:25299...
  • 硅谷少年: 非常有用,感谢分享
  • spartan2: https://dashboard.hcaptcha.com/welcome_accessib...
  • 海运: 应该能,在购买页面先手工跳过cf机器验证,后续一定时间内不更换ip应该不会再次验证。
  • spartan: 大佬斯巴达开启了CF的机器识别验证,请问插件能自动跳过吗? 另外这个脚本有没有简单使用说明,新...
  • vincent: 膜拜大佬