Apache————工作模式

Apache工作模式介绍

源码包安装 httpd 时可查看 httpd-mpm.conf 文件
工作模式类型

  • Event模式
  • Prefork模式
  • Worker模式

一、event模式

event 工作模式介绍:

1、event 是Apache 最新的工作模式,它和 worker模式很像,不同的是在于它解决了keep-alive 长连接的时候占用线程资源被浪费的问题;
2、event 工作模式在遇到某些不兼容的模块时,会失效,将会退回到worker模式;
3、event 工作模式需要 linux系统,对epoll的支持,才能启用,需要补充的是HTTPS的连接(SSL)

(2)event 工作方式:

1、event工作模式中,会有一些专门的线程用来管理这些 keep-alive 类型的线程;
2、当有真实请求过来的时候,将请求传递给服务器的线程,执行完毕后,又允许它释放;
3、这样,一个线程就能处理几个请求了,实现了异步非阻塞,这增强了在高并发场景下的请求处理。
(3)、event工作参数

参数说明
StartServers服务启动时初始的进程数,默认3
MinSpareThreads最小的空闲子进程数,默认75
MaxSpareThreads最大的空闲子进程数,默认250
ThreadsPerChild每个子进程产生的线程数量,默认是25
MaxRequsetWorkers限定同一时间内客户端最大接入的请求数量,默认是400
MaxConnectionPerChild每个子进程在其生命周期内允许最大的请求数量,如果请求总数已经达到这个数值,子进程将会结束,如果设置为0,子进程将永远不会结束。将该值设置为非0值,可以防止运行PHP导致的内存泄露

二、prefork模式

(1)、prefork工作模式介绍
prefork模式实现了一个非线程的预派发的Web服务器,它是要求将每个请求相互独立的情况下最好的MPM,这样若一个请求出现问题就不会影响到其他请求。prefork模式具有很强的自我调节能力,只需要很少的配置指令调至。最重要的是可将MaxClients设置为一个足够强大的数值以处理潜在的请求高峰,同时又不能太大,以免需要使用的内存超出物理内存的大小。
出于稳定性和安全性考虑,不建议更换Apache 2 的运行方式,使用系统默认的prefork模式即可。另外很多php模块不能在工作worker模式下,列例如RedHat Linux 自带的php就不能支持线程安全。
(2)、prefork工作方式
编译安装Apache时,如果没有指定工作模式,默认会使用prefork模式。可以使用httpd -l命令查看,prefork.c表示当前运行的是prefork工作模式
(3)、prefork工作参数

参数说明
ServerLimit最大进程数
StartServers启动的时候创建的进程数量
MinSpareServers最少空闲进程
MaxSpareServers最多空闲进程
MaxClients最多创建多少个子进程用来处理请求
MaxRequestsPerChild每个进程处理的最大请求数,达到请求数,进程即被销毁,如果设置为0,子进程永远不会结束

三、worker模式

(1)、worker工作模式介绍
worker模式使用Web服务器支持混合的多线程进程。由于使用线程来处理请求,所以可以处理海量请求,而系统资源的开销小于基于进程的MPM。但是,它也使用了多进程,而每个进程又有多个线程,以获得基于进程的MPM的稳定性。
(2)、worker工作模式
worker模块每个进程能够拥有的线程数量是固定的,服务器根据负载情况增加或减少进程数量。一个单独的控制进程负责子进程的建立,而每个子进程能够建一定数量的服务线程和一个监听线程,监听线程监听接入请求并将其传递给服务线程处理和应答。
(3)、worker工作参数

参数说明
ServerLimit最大进程数,默认值是"16"
ThreadLimit每个子进程的最大线程数,默认值是"64"
StartServers服务器启动时建立的子进程数,默认值是"3"
MaxClients允许同时接受的最大接入请求数量(最大线程数量)
MinSpareThreads最小空闲线程数,默认值是"75"
MaxSpareThreads设置最大空闲线程数。默认值是"250"
ThreadsPerChild每个子进程建立的常驻的执行线程数。默认值是25
MaxRequestsPerChild设置每个子进程在其生存周期内允许伺服的最大请求数。设置为"0",子进程将永远不会就结束
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值