如何使用 supervisor 处理 Laravel 中的作业?
How to use supervisor to process jobs in Laravel?
我使用 laravel 队列来分派作业并安装主管来处理它们。 Supervisor 进程正在运行,它们正在 运行ning 但不处理我的工作!同时,如果我 运行 直接 php artisan queue:listen
作业正在执行!
我在 conf.d 中创建了队列工作者,但仍然无法正常工作。
sudo apt-get install supervisor
cd /etc/supervisor/conf.d
vi laravel-worker.conf
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=/usr/bin/php /var/www/html/laravel/artisan queue:work database --sleep=3 --tries=3
autostart=true
autorestart=true
user=root
numprocs=5
redirect_stderr=true
stdout_logfile=/var/www/html/laravel/storage/logs/worker.log
然后:wq
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start laravel-worker.conf
有关详细信息,您可以查看文档 https://laravel.com/docs/6.x/queues#supervisor-configuration
对于 command=/usr/bin/php /var/www/html/laravel/artisan queue:work database --sleep=3
和 stdout_logfile=/var/www/html/laravel/storage/logs/worker.log
行,将 /var/www/html/laravel
替换为您的项目路径
我使用 laravel 队列来分派作业并安装主管来处理它们。 Supervisor 进程正在运行,它们正在 运行ning 但不处理我的工作!同时,如果我 运行 直接 php artisan queue:listen
作业正在执行!
我在 conf.d 中创建了队列工作者,但仍然无法正常工作。
sudo apt-get install supervisor
cd /etc/supervisor/conf.d
vi laravel-worker.conf
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=/usr/bin/php /var/www/html/laravel/artisan queue:work database --sleep=3 --tries=3
autostart=true
autorestart=true
user=root
numprocs=5
redirect_stderr=true
stdout_logfile=/var/www/html/laravel/storage/logs/worker.log
然后:wq
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start laravel-worker.conf
有关详细信息,您可以查看文档 https://laravel.com/docs/6.x/queues#supervisor-configuration
对于 command=/usr/bin/php /var/www/html/laravel/artisan queue:work database --sleep=3
和 stdout_logfile=/var/www/html/laravel/storage/logs/worker.log
行,将 /var/www/html/laravel
替换为您的项目路径