有 Laravel artisan 的命令管理器吗

is there any command manager for Laravel artisan

我的 laravel 生产应用程序中的命令很少。

php artisan serve

php artisan queue:work

php artisan roulette:color

php artisan roulette:even

我正在使用带有 ubuntu 自定义主机的 vpn

现在我正在为 运行 宁这些命令制作 4 个不同的屏幕,这些命令 运行 永远

但有时很少崩溃不知道为什么,我必须再次找到哪个屏幕崩溃命令

我在找有没有管理人员可以轻松管理我的命令

谢谢

Supervisor 是 Linux 操作系统的进程监视器,如果失败或保持任何其他命令处于活动状态,它将自动重新启动您的 queue:work 进程。要在 Ubuntu 上安装 Supervisor,您可以使用以下命令: sudo apt-get 安装主管。

配置主管

Supervisor 配置文件通常存储在 /etc/supervisor/conf.d 目录中。在此目录中,您可以创建任意数量的配置文件来指示主管如何监控您的进程。例如,让我们创建一个 laravel-worker.conf 文件来启动和监视 queue:work 进程:

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /home/path/to/you/app.com/artisan queue:work sqs --sleep=3 --tries=3
autostart=true
autorestart=true
user=forge
numprocs=8
redirect_stderr=true
stdout_logfile=/home/path/to/you/app.com/worker.log
stopwaitsecs=3600

在此示例中,numprocs 指令将指示 Supervisor 运行 8 queue:work 个进程并监视所有进程,如果失败则自动重新启动它们。您应该更改 command 指令的 queue:work sqs 部分以反映您所需的队列连接。

启动主管

创建配置文件后,您可以更新 Supervisor 配置并使用以下命令启动进程:

sudo supervisorctl reread

sudo supervisorctl update

sudo supervisorctl start laravel-worker:*

有关 Supervisor 的更多信息,请参阅 Supervisor documentation

不需要制作4个不同的画面,只需要运行:

nohup php artisan queue:work --daemon &

这将防止命令在您注销时退出。 尾随符号 (&) 导致进程在后台启动,因此您可以继续使用 shell 而不必等到脚本完成。

您可以在后台 运行 任何 shell 命令,方法是将 & 添加到末尾:

nohup php artisan serve &

正在安装 Supervisor

Supervisor 是 Linux 操作系统的进程监视器,如果失败,它将自动重新启动您的 queue:work 进程。要在 Ubuntu 上安装 Supervisor,您可以使用以下命令:

sudo apt-get install supervisor

配置主管

/etc/supervisor/conf.d 目录中创建 laravel-worker.conf

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/laravel-example/artisan queue:work sqs --sleep=3 --tries=3
autostart=true
autorestart=true
user=forge
numprocs=8
redirect_stderr=true
stdout_logfile=/var/www/laravel-example//storage/logs/supervisord.log
stopwaitsecs=3600

您可以在 Laravel 文档中查看 Supervisor: A Process Control System and Supervisor Configuration 了解更多信息