执行一个队列监听

2018-02-24 15:52 更新

Laravel 内含一个 Artisan 命令,它将推送到队列的工作拉来下执行,你可以使用 queue:listen 命令,来执行这件常驻任务:

开始队列监听

php artisan queue:listen

你也可以指定特定队列连接让监听器使用:

php artisan queue:listen connection

注意当这个任务开始时,这将会一直持续执行到他被手动停止,你也可以使用一个处理监控如 Supervisor 来确保这个队列监听不会停止执行。

你也可以在 listen 命令中使用逗号分隔的队列连接,来设置不同队列连接的优先层级:

php artisan queue:listen --queue=high,low

在这个范列中,总是会优先处理 high-connection 中的工作,然后才处理 low-connection。

指定工作超时参数

你也可以设置给每个工作允许执行的秒数:

php artisan queue:listen --timeout=60

指定队列休息时间

此外,你也可以指定让监听器在拉取新工作时要等待几秒:

php artisan queue:listen --sleep=5

注意队列只会在工作时休息,假如有许多可执行的工作,队列会持续的处理工作而不会休息

处理队列上的第一个工作

当你只想处理队列上的一个工作你可以使用 queue:work Artisan 命令:

php artisan queue:work

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号