cgi是什么以及cgi、fastcgi及php-fpm的原理是什么
这期内容当中小编将会给大家带来有关cgi是什么以及cgi、fastcgi及php-fpm的原理是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
CGI 是Web 服务器运行时外部程序的规范,按CGI 编写的程序可以扩展服务器功能。
CGI(Common Gateway Interface) 是WWW技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与WEB服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的过程。
CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。
CGI的处理步骤:
⑴通过Internet把用户请求送到web服务器。
⑵web服务器接收用户请求并交给CGI程序处理。
⑶CGI程序把处理结果传送给web服务器。
⑷web服务器把结果送回到用户。
cgi的原理
cgi是通用网关接口定义。当web server收到/index.php这个请求后,会启动对应的CGI程序,这里就是PHP的解析器。接下来PHP解析器会解析php.ini文件,初始化执行环境,然后处理请求,再以规定CGI规定的格式返回处理后的结果,退出进程。web server再把结果返回给浏览器。
fastcgi的原理
fastcgi是一个协议。实现管理进程,提高cgi性能,标准cgi对每个请求都会解析php.ini,初始化环境,浪费时间;fastcgi启动master进程,解析配置文件,初始化环境,然后启动多个worker进程;请求过来时,master传递给worker进行处理;worker不够用会预先多起几个,worker空闲较多会停掉几个。
php-fpm的原理
是一个实现了fastcgi协议的程序。修改php.ini之后,php-cgi进程无法平滑重启。php-fpm对此的处理机制是新的worker用新的配置,已经存在的worker处理完手上的活就可以歇着了,通过这种机制来平滑过度。
上述就是小编为大家分享的cgi是什么以及cgi、fastcgi及php-fpm的原理是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。