php Laravel队列邮件即使在queue:restart之后也不会更新

5w9g7ksd  于 2023-06-04  发布在  PHP
关注(0)|答案(1)|浏览(167)

我正在用Laravel发送排队的邮件。驱动程序是数据库。我没有安装supervisor,因为它是一个共享主机。
我已经更新了邮件的刀片文件,但即使在运行php artisan queue:restart后,发送的邮件仍然使用旧的视图。
我已经用php artisan optimize:clear甚至sudo php artisan optimize:clear清除了所有缓存。
有趣的是我找不到有工人运行。没有控制台正在运行queue:work。当我运行ps aux | grep -i 'queue'时,我找不到任何进程。但是我的作业表中的作业仍然运行并发送。当我运行queue:listen时,发送的邮件是正确的更新邮件。
以前,我使用schedule $schedule->command('queue:work --stop-when-empty')->everyMinute()->withoutOverlapping();来确保队列是活动的。但现在日程已经停止了。
是否有一个隐藏的队列工作进程正在运行?如何更新该队列?
非常感谢

vfh0ocws

vfh0ocws1#

如果你没有一个队列worker在运行,那么Laravel可能正在使用不同的方法来处理排队的作业。在您的例子中,由于您使用的是队列的数据库驱动程序,Laravel可以使用queue:listen命令来处理排队的作业。queue:listen命令持续轮询数据库中的新作业,并在新作业可用时进行处理。
运行以下命令以开始侦听排队作业:

php artisan queue:listen

参考文件:Laravel Queues

相关问题