laravel+supervisor的使用
1、安装supervisor
yum install python-setuptools
easy_install supervisor
yum install supervisor
2、配置supervisor
安装成功后,进行配置。
在/etc 下有
其中supervisord.conf 是 supervisor的主配置文件。可以理解为nginx.conf
supervisord.d 是可以存放其他进程的配置文件。即。进程的配置文件可以放在其中。
vim supervisord.conf
修改最后一行为 files = /etc/supervisord.d/*.conf
意思是supervisor会加载/etc/supervisord.d/ 目录下的进程conf配置
启动supervisor
supervisord -c /etc/supervisord.conf
查看supervisor是否启动成功
ps -ef | grep supervisord
到此,配置完成
3、创建项目,自定义进程的名称
cd supervisord.d/
举例:创建laravel-worker 的进程
则:touch laravel-worker.conf
vim laravel-worker.conf
如下:
[program:laravel-worker] ;进程名称,一般和文件名称一样
process_name=%(program_name)s_%(process_num)02d ;进程名称,一般和文件名称一样
command= php /www/laravel/artisan rabbitmq:send ; 指令
autostart=true ;是否跟随supervisord的启动而启动
autorestart=true ;程序退出后自动重启,可选值:[unexpected,true,false],默认为unexpected,表示进程意外杀死后才重启stopasgroup=true;进程被杀死时,是否向这个进程组发送stop信号,包括子进程
user=root ;执行进程的用户
startsecs = 1 ;自动重启时间间隔(s)
numprocs=1 ;进程数
redirect_stderr=true ;是否开启是否重定向错误日志至输出日志
stdout_logfile=/etc/supervisord.d/logs/laravelrabbit.log ;日志路径
保存
校验配置文件是否有修改
supervisorctl reread
更新配置
supervisorctl update
查看supervisor状态
supervisorctl status
重新启动配置中所有程序
supervisorctl reload
4、常用命令
启动服务 systemctl enable supervisord
查看是否启动 systemctl is-enabled supervisord
停止服务 systemctl stop supervisord
开启服务 systemctl start supervisord
服务状态 systemctl status supervisord
重载服务 systemctl reload supervisord
重启服务 systemctl restart supervisord
5、进程管理
查看所有进程 supervisorctl status
有时候没有权限则:
supervisorctl 输入账号和密码即可
停止某个进程 supervisorctl stop laravel-worker:*
停止所有进程 supervisorctl stop all
启动某个进程 supervisorctl start laravel-worker:*
6、web界面
#第一步 进入配置文件
vi /etc/supervisord.conf
#第二步 把下面配置分号去掉
[inet_http_server] ; inet (TCP) server disabled by default
port=0.0.0.0:9001 ; (ip_address:port specifier, *:port for all iface)
username=user ; (default is no username (open server))
password=123 ; (default is no password (open server))
#第三步 重载配置
supervisorctl reload
7、laravel-cli
Artisan 命令行 | 综合话题 |《Laravel 5.4 中文文档 5.4》| Laravel China 社区
1、生成命令
例如:php artisan make:command RabbitSend
会在app/Console/Commands 中生成RabbitSend.php文件
2、修改app/Console/Kernel 中的加入以下内容
进入 RabbitSend.php 文件
处理业务逻辑。
执行命令:
php artisan rabbitmq:send
8、带参数的cli
请求地址
构造请求
原文链接:https://blog.csdn.net/qq_38191585/article/details/124339282

浙公网安备 33010602011771号