欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

phpcgi和phpfpm的区别

程序员文章站 2022-03-13 22:49:20
...
phpcgi和phpfpm的区别

什么是PHP-CGI:

PHP-CGI是PHP自带的FastCGI管理器。 (推荐学习:PHP视频教程

启动PHP-CGI,使用如下命令:

php-cgi -b 127.0.0.1:9000

PHP-CGI的不足:

1、php-cgi变更php.ini配置后需重启php-cgi才能让新的php-ini生效,不可以平滑重启

2、直接杀死php-cgi进程,php就不能运行了。(PHP-FPM和Spawn-FCGI就没有这个问题,守护进程会平滑从新生成新的子进程。)

什么是PHP-FPM

PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的,可以在 http://php-fpm.org/download下载得到.

PHP-FPM其实是PHP源代码的一个补丁,旨在将FastCGI进程管理整合进PHP包中。必须将它patch到你的PHP源代码中,在编译安装PHP后才可以使用。

现在我们可以在最新的PHP 5.3.2的源码树里下载得到直接整合了PHP-FPM的分支,据说下个版本会融合进PHP的主分支去。

相对Spawn-FCGI,PHP-FPM在CPU和内存方面的控制都更胜一筹,而且前者很容易崩溃,必须用crontab进行监控,而PHP-FPM则没有这种烦恼。

PHP5.3.3已经集成php-fpm了,不再是第三方的包了。PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置,比spawn-fcgi具有更多有点,所以被PHP官方收录了。在./configure的时候带 –enable-fpm参数即可开启PHP-FPM。

二者的区别:

php-cgi是被调用的进程,php-fpm是配置和管理进程的。

以上就是phpcgi和phpfpm的区别的详细内容,更多请关注其它相关文章!

相关标签: phpcgi