对于php请求,httpd可以用模块和fastcgi两种方式实现动态程序的支持。
fastcgi模式:php处理请求,不再由http服务器自身进行管理,http服务器把http协议转化为factcgi协
议,通过socket发送给fastcgi专用进程处理php程序。
fastcgi的优势
- 稳定性
fastcgi是以独立的进程池运行来程序,如果单独一个进程死掉,系统可以很轻易的丢弃,然后重新分配新的进程来运行逻辑。从安全性上看,fastcgi和http的server完全独立, fastcgi怎么down也不会把server搞垮。 - 性能
fastcgi把动态逻辑的处理从http server中分离出来,大负荷的IO处理还是留给宿主server,这 样hpttdserver可以一心一意作IO,对于一个普通的动态网页来说,逻辑处理可能只有一小部分,大量的图片等静态IO处理完全不需要逻辑程序的参与。 - 扩展性
fastcgi是一个中立的技术标准,完全可以支持任何语言写的处理程序,如php,java,python等。
php-fpm就是用来支持php的fastcgi服务器。