php-fpm详解及重启方法

php-fpm是PHP内置的一种FastCGI并提供进程管理功能,php-fpm包含master进程和worker进程,master进程只有一个并负责监听端口,而worker进程有多个,重启php-fpm可以通过kill master进程来实现,码笔记分享php-fpm介绍及重启php-fpm的方法:

php-fpm详解

php-fpm即FastCGI Process Manager:FastCGI进程管理器,它是PHP内置的一种FastCGI,提供进程管理功能。

php-fpm包括master和worker两种进程,master负责监听端口,接收来自Web Server的请求,master进程只有一个,而worker进程可以有多个,每个进程内部都嵌入了一个PHP解释器,是PHP代码真正执行的地方。

php-fpm重启的方法

php-fpm如何开启、停止和重启?在PHP5.3.3版本之前,可以通过/usr/local/php/sbin/php-fpm (start|stop|reload)类似命令打开、停止和重启php-fpm。

PHP新版本后,php-fpm开启、停止和重启的命令不可以用了。码笔记之前说了,php-fpm只有一个master进程,使用控制信号并kill这个master进程即可,可以使用下面的方法来重启php-fpm

  • 1. 查看php-fpm的master进程号
  • 执行命令:ps aux|grep php-fpm
    查询到当前php-fpm的master进程号,示例:

    执行命令后,查询到php-fpm的master进程pid为:1264。

  • 2. 执行kill重启php-fpm
  • 查看到php-fpm的master进程号后,使用信号控制重启php-fpm:

    INT,TERM:立刻终止
    QUIT:平滑终止
    USR1:重新打开日志文件
    USR2:平滑重载所有worker进程并重新载入配置和二进制模块

    根据信号控制重启php-fpm执行命令:kill -USR2 1264,即可重启php-fpm。

    php-fpm请求步骤

    访客访问网站之php-fpm请求步骤,以Nginx Web服务器为例:

  • 浏览器访问www.mabiji.com
  • 通过http协议传输--http server(服务器Nginx/Apache)
  • 路由到www.mabiji.com/index.php
  • 加载nginx的fast-cgi模块
  • fast-cgi监听127.0.0.1:9000地址,通过 fast-cgi 协议将请求转发给 php-fpm 处理
  • 请求到达 127.0.0.1:9000
  • php-fpm 监听 127.0.0.1:9000(可以通过 php-fpm.conf 进行修改)
  • 以上为php-fpm介绍及php-fpm重启的方法。

    2023腾讯云服务器超便宜,这个价格太可以了,抓紧上车!

    注意:以上特价轻量服务器限制条件为“产品首单特惠”,如果你的腾讯云账号已经是老用户,建议重新注册一个腾讯云账号,如果你是新用户符合条件,那么无脑入,这个CPU内存带宽配置,价格确实便宜,值得买!