PHP的运行模式

## CGI模式

## FastCGI模式

   FastCGI模式的运行是基于PHP-FPM。PHP-FPM是是一个多进程的 FastCGI 管理程序。一般php的运行模式都是这样,一般的配置都是nginx用于提供http服务,所有的用户请求都是先到达nginx,然后通过FastCGI协议转发给PHP-FPM处理,PHP-FPM的worker进程会抢占CGI进行处理(指的是PHP脚本的解析)处理完业务逻辑以后回收子进程。这个过程是阻塞等待的。这里就很明显PHP-FPM处理请求与PHP-FPM的进程数有关系,加入我们有100 个PHP-FPM进程,那我们的服务器理论上QPS最佳就是100/s。在高并发时候处理就有点费劲了。假如我们的每个进程会占用一个MYSQL连接,MYSQL的最大连接数为100(默认配置)这样FastCGI处理高并发就有点力不足了。

## Cli模式

## 模块模式

鲁ICP备16017569号-2