编程学习网 > PHP技术 > php中级 > PHP内核探索 —— 单进程和多进程/线程SAPI生命周期
2014
11-07

PHP内核探索 —— 单进程和多进程/线程SAPI生命周期

单进程SAPI生命周期

CLI/CGI模式的PHP属于单进程的SAPI模式。这类的请求在处理一次请求后就关闭。也就是只会经过如下几个环节: 开始 - 请求开始 - 请求关闭 - 结束 SAPI接口实现就完成了其生命周期。

2012_02_02_05

单进程多请求则如下图所示:

2012_02_02_06

多进程SAPI生命周期

通常PHP是编译为apache的一个模块来处理PHP请求。Apache一般会采用多进程模式, Apache启动后会fork出多个子进程,每个进程的内存空间独立,每个子进程都会经过开始和结束环节, 不过每个进程的开始阶段只在进程fork出来以来后进行,在整个进程的生命周期内可能会处理多个请求。 只有在Apache关闭或者进程被结束之后才会进行关闭阶段,在这两个阶段之间会随着每个请求重复请求开始-请求关闭的环节。

2012_02_02_07

多线程的SAPI生命周期

多线程模式和多进程中的某个进程类似,不同的是在整个进程的生命周期内会并行的重复着 请求开始-请求关闭的环节。

2012_02_02_08

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取