美文网首页
HTTP 之 MPM工作模式

HTTP 之 MPM工作模式

作者: ghbsunny | 来源:发表于2017-10-06 16:05 被阅读0次

.MPM:multi-processing  module多路处理模块,支持三种I/O模型:prefork,worker,event

.prefork:多进程I/O模型,每个进程响应一个请求,默认模型

一个主进程:生成和回收n个子进程,创建套接字,不响应请求

多个子进程:工作work进程,每个子进程处理一个请求;系统初始时,预先生成多个空闲进程,等待请求,最大不超过1024个

会预先准备好子进程等待用户的访问,系统调用fork函数

prefork用一个进程相应用户的请求

.worker:复用的多进程I/O模型,多进程多线程,IIS使用此模型

一个主进程:生成m个子进程,每个子进程负责生个n个线程,每个线程响应一个请求,并发响应请求:m*n

缺点是当一个线程受影响时,该子进程的所有线程都会受到影响

.event:事件驱动模型(worker模型的变种)

一个主进程:生成m个子进程,每个进程直接响应n个请求,并发响应请求:m*n,有专门的线程来管理这些keep-alive类型的线程,(这里是比worker改进的地方)当有真实请求时,将请求传递给服务线程,执行完毕后,又允许释放,这样增强了高并发场景下的请求处理能力

centos6默认httpd-2.2: event测试版

centos7默认httpd-2.4:event稳定版

prefork MPM:进程相应请求

worker MPM:线程响应用户的请求

event MPM:比worker多了一个监管的模型

进程角色,这里的worker就是线程的意思

相关文章

网友评论

      本文标题:HTTP 之 MPM工作模式

      本文链接:https://www.haomeiwen.com/subject/tykfyxtx.html