php-fpm 如何做进程守护,保证进程中不死

要保证PHP-FPM进程守护并确保进程不死,你可以使用进程管理工具来监控PHP-FPM进程并在需要时重新启动它。在Linux系统上,常用的进程管理工具是systemdsupervisord。下面将分别介绍如何使用这两种工具来实现进程守护。

图片[1]-php-fpm 如何做进程守护,保证进程中不死-连界优站

使用systemd进行PHP-FPM进程守护

  1. 创建一个新的Systemd服务配置文件。在终端中执行以下命令:
sudo nano /etc/systemd/system/php-fpm.service
  1. 在打开的文本编辑器中,添加以下内容:
[Unit]
Description=PHP FastCGI Process Manager
After=network.target

[Service]
Type=simple
PIDFile=/run/php/php-fpm.pid
ExecStart=/usr/local/php/bin/php-fpm --nodaemonize --fpm-config /path/to/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -SIGINT $MAINPID

[Install]
WantedBy=multi-user.target

请注意,上述配置中的/usr/local/php/bin/php-fpm/path/to/php-fpm.conf路径应替换为你实际的PHP-FPM二进制文件路径和配置文件路径。

  1. 保存并关闭文件。然后重新加载Systemd配置并启动PHP-FPM服务:
sudo systemctl daemon-reload
sudo systemctl start php-fpm

现在,PHP-FPM进程应该已经在后台运行,并由Systemd进行守护。如果PHP-FPM进程在任何时候意外退出,Systemd会自动重新启动它。

使用supervisord进行PHP-FPM进程守护

  1. 首先,确保已安装supervisord。如果未安装,可以使用以下命令来安装:
sudo apt-get update
sudo apt-get install supervisor
  1. 创建一个新的supervisord配置文件。在终端中执行以下命令:
sudo nano /etc/supervisor/conf.d/php-fpm.conf
  1. 在打开的文本编辑器中,添加以下内容:
[program:php-fpm]
command=/usr/local/php/bin/php-fpm --nodaemonize --fpm-config /path/to/php-fpm.conf
autostart=true
autorestart=true
startsecs=3
redirect_stderr=true

请注意,上述配置中的/usr/local/php/bin/php-fpm/path/to/php-fpm.conf路径应替换为你实际的PHP-FPM二进制文件路径和配置文件路径。

  1. 保存并关闭文件。然后重新加载supervisord配置并启动PHP-FPM服务:
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start php-fpm

现在,PHP-FPM进程应该已经在后台运行,并由supervisord进行守护。如果PHP-FPM进程在任何时候意外退出,supervisord会自动重新启动它。

通过使用以上两种方法之一,你可以确保PHP-FPM进程始终处于运行状态,保证了网站的稳定性和可用性。

© 版权声明
THE END
喜欢就支持一下吧
点赞10赞赏 分享