FastCGI与php-fpm

Posted daqzg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FastCGI与php-fpm相关的知识,希望对你有一定的参考价值。

FastCGI:为了兼顾IIS下php的效率和安全,微软给出了FastCGI的解决方案。同ISAPI原理有些类似,就是减少CGI初始化等前置操作的消耗。FastCGI可以让PHP的进程重复利用而不是每一个新的请求就重开一个进程。同时FastCGI也可以允许几个进程同时执行。这样既解决了CGI进程模式消耗太大的问题,又利用上了CGI进程模式不存在线程安全问题的优势。那么Fastcgi是怎么做的呢?首先,Fastcgi会先启一个master,解析配置文件,初始化执行环境,然后再启动多个worker。当请求过来时,master会传递给一个worker,然后立即可以接受下一个请求。要说明的是FastCGI本身仅仅是种协议,php-fpm是其中一种实现,来管理cgi程序,其操作比如:

--start 启动php的fastcgi master进程
--stop 强制终止php的fastcgi master进程
--quit 平滑终止php的fastcgi master进程
--restart 重启php的fastcgi master进程
--reload 重新平滑加载php的php.ini
--logrotate 重新启用log文件

以上是关于FastCGI与php-fpm的主要内容,如果未能解决你的问题,请参考以下文章

日志服务管理&CGI与FASTCGI区别

FastCGI与php-fpm

实战Nginx与PHP(FastCGI)的安装配置与优化

cgi和fastcgi

FastCgi与PHP-fpm之间的关系

FastCGI与PHP-FPM的关系