Supervisor 使用教程:进程守护的最佳实践指南

阅读:13 2025-07-15

6609c93d70cf3bc79f3dc9dba757ada1cd11728bfcf7.jpg


Supervisor 教程, Supervisor 配置, Linux 进程守护, 后台任务管理, 运维工具手册


一、Supervisor 是什么?

Supervisor 是一款用于管理和监控进程的工具,适用于在 Linux 服务器上保持后台任务持续运行,常用于:

  • Laravel 队列监听器

  • Python 脚本守护

  • Node.js 服务托管

  • 后台计划任务(如 crontab 替代方案)

它的核心价值在于 自动重启进程集中日志统一配置管理


二、安装 Supervisor

Ubuntu / Debian:

sudo apt update
sudo apt install supervisor -y

CentOS / RHEL:

sudo yum install epel-release -y
sudo yum install supervisor -y

启动并设置开机自启:

sudo systemctl enable supervisor
sudo systemctl start supervisor

三、配置进程管理任务

Supervisor 的配置文件目录在 /etc/supervisor/conf.d/。我们以 Laravel 队列监听器为例:

新建配置文件:

sudo nano /etc/supervisor/conf.d/laravel-worker.conf

配置内容如下:

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=www-data
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/html/storage/logs/worker.log

保存后,重新加载配置并启动:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start laravel-worker:*

四、常用操作命令

操作命令
查看所有任务状态sudo supervisorctl status
启动进程sudo supervisorctl start <name>
停止进程sudo supervisorctl stop <name>
重新启动进程sudo supervisorctl restart <name>


五、错误排查与日志查看

Supervisor 自动记录日志,若进程未启动成功,可通过如下方式查看:

cat /var/www/html/storage/logs/worker.log

也可以查看 Supervisor 本身的日志:

cat /var/log/supervisor/supervisord.log

六、总结

Supervisor 是现代运维中不可或缺的进程管理工具,特别适合部署 Laravel、Node.js、Python 等需要长期运行的任务。通过合理配置与日志监控,你可以大大提高服务的稳定性和可维护性。


声明

1、部分文章来源于网络,仅作为参考。
2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!