用wordpress建站一个人可以吗,全国招标公告公示平台,河南宏业建设管理有限公司网站,网站开发工资淄博在解析这个问题前#xff0c;先要讲述一个概念#xff0c;什么是cgi程序#xff1f;1.什么是cgi程序#xff0c;cgi与fastcgi的区别CGI的中文名称是通用网关接口#xff0c;是外部应用程序与web服务器之间的接口标准。CGI规范允许web服务器执行外部程序#xff0c;并将它…在解析这个问题前先要讲述一个概念什么是cgi程序1.什么是cgi程序cgi与fastcgi的区别CGI的中文名称是通用网关接口是外部应用程序与web服务器之间的接口标准。CGI规范允许web服务器执行外部程序并将它们的输出发送给web浏览器。而fastcgi则是一个常驻型的cgi它可以一直执行着不需求每次请求都必须fork进程来处理此外它还支持分布式运算接受来自其他服务器的请求。以下表格总结出它们的异同点web服务器处理进程CGIfork一个新的进程处理读取参数处理数据结束进程FASTCGI用tcp或者管道的方式与进程建立连接处理处理数据后进入循环等待新请求fastcgi不用fork新的进程处理请求性能上比cgi程序要优。2.PHP与web服务器通讯方式1)php-fpm模式php-fpm是一个php fastcgi管理器可以视为php-cgi程序的守护进程。该模式下php-fpm进程负责接收web服务器请求分发给它的子进程——php-cgi来处理数据。这种模式一般搭配Nginx使用其配置如下location ~ .*\.(php|php5)?${try_files $uri 404;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;include /etc/nginx/fastcgi.conf;} php-fpm已经纳入php内核在编译时通过--enable-fpm来启用改功能。2)mod_php模式该模式下一般是作为apache的一个模块启动的apache在启动时会读取php.ini文件并加载扩展模块除非apache重启php模块不会被重新加载。在该模式下apache使用prefork模式(非线程型预派生web服务器)或者worker模式处理(混合多线程多进程由于使用线程处理请求系统开销小于prefork模式但是它既有多进程因此也能保证prefork模式的稳定性)。由于不需要额外的进程通讯和应用解析该模式性能要比fastcgi好得多。以下也作了一个表格来对比fastcgi和mod_phpfastcgimod_php性能--较好易用性跟web服务器无关便于分布式处理同时支持平滑重启随apache启动使用过程中无法重启内存占用内存占用较高内存占用率较低但每个请求都需求调用该模块包括静态请求3.PHP推荐服务器配置方式综合以上的对比可以利用每个模式的特性一般常用的是nginx处理静态文件php请求则是通过转发让apache处理。