执行一个队列监听

最后更新于:2022-04-01 15:09:40

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`
';