我有一个通过 envoyer 部署到非伪造服务器的 laravel 5.4 应用程序。我在数据库驱动程序上运行队列工作程序,使用主管进行监控,按照文档中的描述进行设置;
command=php /home/data/app/current/artisan queue:work --sleep=3 --tries=3
并使用特使部署挂钩
cd ~/app/current
php artisan queue:restart
问题是,在每次部署之后,队列工作人员都没有重新启动,旧的工作人员继续运行,然后抛出错误,因为他们正在处理以前版本的代码。从 CLI 手动运行 queue:restart 也不起作用。
data@medicone:~/ccpbase/current$ ps -aux | grep queue:work
data 4347 0.0 0.2 292988 34852 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4348 0.0 0.2 292988 34864 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4349 0.0 0.2 292988 34720 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4350 0.0 0.2 292988 34880 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4351 0.0 0.2 292988 34972 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4382 0.0 0.2 292988 34904 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4383 0.0 0.2 292988 34992 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4384 0.0 0.2 292988 34980 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4863 0.0 0.0 14228 1016 pts/0 S+ 11:32 0:00 grep queue:work
data@medicone:~/ccpbase/current$
data@medicone:~/ccpbase/current$ php artisan queue:restart
Broadcasting queue restart signal.
data@medicone:~/ccpbase/current$ ps -aux | grep queue:work
data 4347 0.0 0.2 292988 34852 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4348 0.0 0.2 292988 34864 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4349 0.0 0.2 292988 34720 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4350 0.0 0.2 292988 34880 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4351 0.0 0.2 292988 34972 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4382 0.0 0.2 292988 34904 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4383 0.0 0.2 292988 34992 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4384 0.0 0.2 292988 34980 ? S 11:12 0:00 php /home/data/ccpbase/current/artisan queue:work --sleep=3 --tries=3
data 4869 0.0 0.0 14228 960 pts/0 S+ 11:32 0:00 grep queue:work
data@medicone:~/ccpbase/current$
如果我手动找到并杀死 8 个正在运行的进程,主管确实会正确重新启动它们,并且我的排队作业会再次工作。
谁能想到任何可能阻止这些工人被杀的事情?storage/logs/laravel.log 中没有任何相关内容