问题:PHP 常驻进程经常出现死掉的情况;
解决方案:使用 Supervisor, 当进程死掉时,可以重启,不局限于PHP进程,任何进程,都可以用Supervisor 进行重启。

1、安装

安装python应该就可以了,python 安装包自带 Supervisor
或者用pip安装Supervisor进程管理工具
参考链接:https://www.cnblogs.com/Dicky-Zhang/p/6171954.html

2、配置

2.1 生成配置文件
在Mac下,由于安全规则,默认不能在/etc/下增加配置,
不过可以在/usr/local/etc目录下创建配置文档,效果是一样的。

sudo echo_supervisord_conf > /usr/local/etc/supervisord.conf

可以使用上述命令,生成配置文件。
其中,echo_supervisord_conf命令可以打印所有的默认配置信息;

2.2 配置后台管理页面,解开下面的注释就可以了
[inet_http_server]
port=127.0.0.1:9001 
username=user
password=123

2.3 配置进程重新启动时的命令,在配置文件中,新增下面几行代码
[program:apple]
process_name=%(program_name)s_%(process_num)02d
command=php artisan apple
autostart=true
autorestart=true
;user=user
numprocs=8
redirect_stderr=true
stdout_logfile=/var/log/supervisor.log

3、启动supervisor的守护进程

sudo supervisord -c /usr/local/etc/supervisord.conf

其中,需要用 -c 参数指定配置文件。

4、管理常驻进程

supervisor守护启动成功后,要自动重启的命令就已经正常运行了。
通过本地浏览器,进入管理后台:http://127.0.0.1:9001/,打开效果图如下
可以在后台看到进程的相关信息,如运行了多长时间
也可以,做相关操作,如停止进程、重启进程、查看log、清除log

clipboard.png


BigXia
36 声望0 粉丝