终于弄懂cgi、fast-cgi、php-cgi、php-fpm的关系了

  今天,公司的电脑加了块固态。上午花了点时间重装系统,下午快下班的时候,才想起来本地的php环境还没装。以前,在windows上装过apache压缩包,也装过phpStudy,这次又想折腾一下nginx。
  在nginx关联php时,发现php-cgi的作用跟php-fpm类似,这才让我恍然大悟。结合网上查阅的资料( https://blog.csdn.net/illusion_you/article/details/79424670 )。
  我觉得,cgi和fast-cgi就好像一个说明书,说明了某个东西的使用方法,但又不仅仅是说明,它还规范了这个东西该怎么做,能做什么。cgi和fast-cgi的差别,就像是1.0跟2.0的差别。前者每次调用php,都需要初始化配置和扩展。后者会守护一个进程去管理,性能上肯定是有提高的。
  而php-cgi,是一个实实在在的可执行文件( 在php包里 ),它实现了fast-cgi定义的东西,可以拿来用。但是它又存在问题,比如说,修改配置了需要重启服务进程。而当时,php-fpm的出现,取代了它的地位,它就变成了1.0。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注