apache调用php的三种方式及MPM

自己的理解,不知道对不对

apache调用php的三种方式
1、模块方式,这种方式中web server 与模块是同时加载的

2、cgi方式,每当一个请求到来时,web server调用一次php.exe,调用结束后php进程关闭;用的是进程间通信的方式

3、fast-cgi方式,php以服务器的形式提供服务,web 服务与php同时启动,当php服务启动时,会自动产生多个可执行的字php进程,每当一个请求到来时,web服务器将请求通过tcp的通信方式转交给php服务器,此时php服务器调用一个已经准备好的进程来处理请求,处理完成后php服务器将结果返回给web服务器同时不用关闭那个php进程。这样处理的速度要比cgi模式快的多。

MPM:多路处理模块
1、prefork模型:一个进程处理一个请求
2、worker模型:一个线程处理一个请求,多进程模式,              
3、event模型:一个线程处理一个请求,多进程模式,


三者之间的区别:

prefork模型与worker模型使用的是select 与 poll方法,也就是IO复用的方法,在请求过程当中有两段阻塞
event 模型使用的是event-driven(事件驱动模型),在请求过程当中只有一段阻塞(内和缓冲区到进程缓冲区)


阻塞与非阻塞指的是在系统调用的过程中进程的状态,同步与异步指的是数据准备好时与进程交互的方式。

IO复用与事件驱动均为异步阻塞(区别是有几段阻塞),AIO是异步非阻塞。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值