Laravel 8 Worker 超时

2021-07-06 11:49 更新

queue:work Artisan 命令暴露一个 --timeout 选项。--timeout 选项指定在杀死正在处理作业的子队列 worker 之前,Laravel 队列主进程将等待多长时间。有时,由于各种原因,子队列进程可能会被 “冻结”。 --timeout 选项用来删除超过指定时间限制的冻结进程:

php artisan queue:work --timeout=60 

retry_after 配置选项和 --timeout CLI 选项是不同的,但它们共同确保不会丢失任务,并且任务只被成功处理一次。

注意:--timeout 值应该总是比 retry_after 配置值至少短几秒。这将确保处理给定任务的 worker 总是在重试作业之前被杀死。如果你的 --timeout 选项比你的 retry_after 配置值长,你的任务可能会被处理两次。

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

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号