之前我的一片笔记里面讲到了FastCGI、php-fpm相关的知识,今天说一下php-fpm的启动、重启、关闭
启动php-fpm
/usr/local/php/sbin/php-fpm
执行以上命令就能够启动php-fpm
可以用命令ps aux|grep php-fpm
查看正在运行的php-fpm相关进程
重启php-fpm
以前php-fpm是可以通过/usr/local/php/sbin/php-fpm reload
这种命令重启的,但是自从php-fpm被收编到官方源代码里面之后,这种方法就不管用了。
可以使用信号量来实现重启功能
首先用命令ps aux|grep php-fpm
查看正在运行的php-fpm相关进程,结果如下:
nemo 26915 0.0 0.2 263656 10972 ? Ss 13:46 0:01 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nemo 26916 0.0 0.2 263524 9864 ? S 13:46 0:00 php-fpm: pool www
nemo 26917 0.0 0.2 263524 9864 ? S 13:46 0:00 php-fpm: pool www
第一列就是进程所属的用户,第二列就是pid。
可以使用kill -USR2 master的pid
的方式来实现php-fpm的平滑重启。由于master负责管理线程,所以只要发信号给master就行。
相关的信号量的含义是这样的:
- INT, TERM 立刻终止
- QUIT 平滑终止
- USR1 重新打开日志文件
- USR2 平滑重载所有worker进程并重新载入配置和二进制模块
关闭php-fpm
可以使用kill -TERM master的pid
或者或者kill -INT master的pid
或者kill -QUIT master的pid
终止php-pfm