• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php-fpm fastcgi phpcgi这些是干嘛用的?

php 搞代码 4年前 (2022-01-23) 84次浏览 已收录 0个评论
文章目录[隐藏]

经常看到这几个东西,但是网上查的资料看不懂,哪位能通俗的说说。

概念了解:C

!本文来源gaodai.ma#com搞##代!^码网(

搞gaodaima代码GI,FastCGI,PHP-CGI与PHP-FPM

最好举个栗子!

谢谢

回复内容:

经常看到这几个东西,但是网上查的资料看不懂,哪位能通俗的说说。

概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM

最好举个栗子!

谢谢

CGI就是一套接口规则,它用于HTTP服务器和动态处理程序之间的通讯方式的确立。
FastCGI可以算是CGI的一种实现,它通过让CGI处理程序常驻进程,让一个CGI进程可以处理多个请求,减少了反复启动CGI程序的时间和资源的消耗。

php-cgi就是一个用来提供PHP程序处理的FastCGI。
php-fpm(FastCGI Process Manager)则是在FastCGI程序之上来管理FastCGI进程的管理工具。
php-cgi是单进程的,开启一个php-cgi来处理请求时,一次只能处理一个请求,其余请求时排队的。
php-fpm则管理多个FastCGI进程,让请求可以并行发送到多个FastCGI进程同时处理。
可以简单的理解为php-fpm管理着多个php-cgi

举个简单的例子,一个请求从客户端发送到Nginx服务器再由PHP程序处理的过程:

  • 请求发送到Nginx服务器,Nginx服务器根据配置将其发送到php-fpm,然而Nginx和php-fpm是两家公司的产品,他们如果确保相互之间能读懂对方发送的信息内容的?这就是因为他们在设计时都遵循了CGI的规则。

  • php-fpm收到请求后,会在自己所管理的FastCGI进程中找到一个空闲的进程,来处理这个请求

  • 另外Nginx也可以对接php-cgi,不过php-cgi没有进程管理模块,而就是单进程的。

参考尹川的回答, FastCgi与PHP-fpm之间的关系


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php-fpm fastcgi phpcgi这些是干嘛用的?

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址