Laravel 8 运行队列处理器
Laravel 有一个队列处理器对新推入队列的任务进行处理。通过 Artisan 命令 queue:work
来启动队列处理器。需要注意的是,一旦 queue:work
命令启动,将一直保持运行,直到它被手动停止或你关闭你的终端:
php artisan queue:work
技巧:为了让
queue:work
进程永久地在后台运行,您应该使用一个进程监视器,如 Supervisor,以确保队列 worker 不会停止运行。
请记住,队列处理器是长生命周期的进程,并将启动的应用程序状态存储在内存中。因此,在启动它们之后,代码库中的更改对其不起作用。因此,在部署过程中,一定要重新启动你的队列处理器。此外,请记住,应用程序创建或修改的任何静态状态不会在任务之间自动重置。
或者,你可以运行 queue:listen
命令。在使用 queue:listen
命令时,当你想要重新加载更新的代码或重置应用程序状态时,你不必手动重新启动 worker;但是,这个命令的效率不如 queue:work
:
php artisan queue:listen