CGI、FastCGI、PHP-FPM与Module模式

本文介绍了CGI、FastCGI和PHP-FPM的工作原理及其优缺点。CGI每次请求都会创建新的进程,导致性能低下。FastCGI作为CGI的改进版,通过常驻内存的进程管理提高性能,支持多种语言。PHP-FPM是PHP对FastCGI的具体实现,采用多进程模型,通过连接池优化数据库交互,提升性能。模块模式下,Apache直接集成PHP模块处理请求,但启动时加载所有模块可能导致资源浪费。
摘要由CSDN通过智能技术生成

CGI

最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态HTML。随着对网站的需求日益复杂,一些语言开始能写出动态网站,但是服务器本身并不能直接解析这些文件,服务器自己不能做,只能交给第三方处理,但是要提前与第三方做好约定,我给你什么,然后你给我什么,就是我把请求参数发送给你,然后我接收你的处理结果,再返回给客户端。那这个约定就是 Common Gateway Interface,简称CGI。这个协议可以用PHP、Python、C/C++来实现。如PHP-CGI,就是对CGI协议的实现。

这里写图片描述

服务器与CGI程序的交互步骤:
WEB服务器将根据CGI程序的类型决定数据向CGI程序的传送方式,一般来讲是通过标准输入/标准输出流环境变量来与CGI程序间进行数据的传递。 如下图所示:

这里写图片描述

CGI程序通过标准输入(STDIN)标准输出(STDOUT)来进行输入输出数据。此外 CGI程序还通过环境变量来得到输入,操作系统提供了许多环境变量,它们定义了程序的执行环境,应用程序可以读取它们

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值