首頁  >  問答  >  主體

php cgi与fpm关系

现在我的服务是在nginx + fpm 方式运行。

请问php用cgi跑和fpm跑有什么区别么?

php新手对这两概念不太了解,求教各位。

伊谢尔伦伊谢尔伦2773 天前758

全部回覆(2)我來回復

  • 阿神

    阿神2017-04-10 14:31:00

    用fpm更好。

    cgi是最原始的方式,即Nginx针对每一个请求,创建一个PHP解释器进程,处理完请求后,进程销毁。
    fastcgi算是cgi的升级版,Nginx会创建一个(或多个)持久的进程,逐个处理请求,省去了创建和销毁进程的开销。

    phpfpm是PHP的fastcgi管理器,有很多实用的功能(如灵活地配置进程池管理策略), 应该说是和Nginx配合的最佳选择。

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-10 14:31:00

    PHP-FPM 是为 PHP 内核编写的补丁,用来根据需要处理 FastCGI 进程的启动、停止、重启。

    1. 较低的内存占用率(因为 nginx 单独运行时不用加载整个 PHP 环境)。
    2. 轻松地管理用户权限(因为 PHP 可以在你的服务器进程中管理不同的用户)。
    3. 当 PHP 崩溃时,nginx 可以照常运行。

    最近有消息称,PHP5.4 将很有可能把 PHP-FPM (PHP FastCGI 进程管理器)补丁包含在内核里。

    回覆
    0
  • 取消回覆