php-fpm -v
php-fpm –c php.ini –y php-fpm.conf
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
关闭和重启fpm都是用了kill命令来给fpm进程发送一个信号,除了上面的两个,还有其他信号用于管理fpm进程:
信号 | 作用 |
---|---|
INT | 立即终止 |
QUIT | 平滑终止 |
USR1 | 重新打开日志文件 |
USR2 | 重启(平滑重载所有worker进程并重新载入配置和二进制模块) |
除了上面所述的方法来管理fpm进程,我们还有更简单的方法,如:
/etc/init.d/php-fpm {start,stop,restart,reload…..}
或者
service php-fpm {start,stop,restart,reload…..}
其实service命令就是调用/etc/init.d
目录下的脚本文件,而这种方式其实就是对kill 方式的一种封装。
我们可以查看/etc/init.d/php-fpm 文件来证明这一点:
stop)
echo -n "Gracefully shutting down php-fpm "
if [ ! -r $php_fpm_PID ] ; then
echo "warning, no pid file found - php-fpm is not running ?"
exit 1
fi
kill -QUIT `cat $php_fpm_PID`
wait_for_pid removed $php_fpm_PID
if [ -n "$try" ] ; then
echo " failed. Use force-quit"
exit 1
else
echo " done"
fi
;;