zoukankan      html  css  js  c++  java
  • 什么是nginx、CGI、fastCGI、php-fpm、PHP-CGI,fast-CGI 与 php-cgi又是什么关系

    nginx是做什么用的
    是浏览器(用户)与服务器交互的一个服务,他只能处理静态文件。如果发现是自己处理不了的文件,根据配置可以将其转发到对应的其他服务上
     
    什么是CGI
    1.当server收到一个php的请求时,会启动一个程序去处理当前的请求,而这个程序就是CGI。
    2.CGI会查看phpini的配置并载入、初始化进程并处理请求,这个过程在每一次处理php请求时都会发生,所以会造成严重的资源开销
    3.CGI的中文含义是通用网关接口,也就是说只要能够返回标准html数据的服务都可以叫做CGI。所以CGI不单单是php才有的东西
     
    什么是fastCGI
    因为上面第二条的问题,当请求量过大时CGI程序会严重浪费系统资源的。这样fastcgi就是为了解决这个问题。
    fastcgi会提供这样的功能:首先会由某个程序读取相应的配置文件并初始化执行环境,当这一系列步骤完成之后,他会一下生成很多个cgi进程(也就是进程池),这样在以后处理php的请求时就不需要频繁的“读取配置、创建进程、销毁进程这样的步骤了”,所以fastcgi可以理解为就是为了实现这种效果而产生的一种处理办法
     
    什么是php-fpm
    用来实现fast-cgi的操作
    “php-fpm是fastcgi进程的管理器,用来管理fastcgi进程的”,这句话可以理解成php-fpm就是能够实现fastcgi功能的程序,他目前由php官方集成到php内核中。所以就是如果要实现cgi的进程池功能就需要使用php-fpm
     
    什么是PHP-CGI
    php-cgi只是解释PHP脚本的程序而已
     
    fast-CGI 与 php-cgi关系
    一个是协议,在php中由php-fpm实现,管理着解析php脚本的进程
    另一个是一个程序,专门处理php脚本。
    他俩并没有一定的可比性,因为不是一个东西。
     
    参考资料:
  • 相关阅读:
    _bzoj1061 [Noi2008]志愿者招募【最小费用最大流】
    _bzoj2243 [SDOI2011]染色【树链剖分】
    _bzoj1013 [JSOI2008]球形空间产生器sphere【高斯消元】
    _bzoj1002 [FJOI2007]轮状病毒【瞎搞】
    leetcode 273 Integer to English Words
    leetcode 12 Integer to Roman
    leetcode 1071 Greatest Common Divisor of Strings
    lc6 ZigZag Conversion
    lc13 Roman to Integer
    leetcode 171 Excel Sheet Column Number
  • 原文地址:https://www.cnblogs.com/JasonLeemz/p/7654926.html
Copyright © 2011-2022 走看看