源码分析 Laravel 重复执行同一个队列任务的原因

时间:2024-02-09 19:13:15
【文件属性】:

文件名称:源码分析 Laravel 重复执行同一个队列任务的原因

文件大小:69KB

文件格式:PDF

更新时间:2024-02-09 19:13:15

ar ravel 源码

前言 laravel 的队列服务对各种不同的后台队列服务提供了统一的 API。队列允许你延迟执行消耗时间的任务,比如发送一封邮件。这样可以有效的降低请求响应的时间。 发现问题 在 Laravel 中使用 Redis 处理队列任务,框架提供的功能非常强大,但是最近遇到一个问题,就是发现一个任务被多次执行,这是为什么呢? 先说原因: 因为在 Laravel 中如果一个队列(任务)执行时间大于 60 秒,就会被认为执行失败并重新加入队列中,这样就会导致重复执行同一个任务。 这个任务的逻辑就是给用户推送内容,需要根据队列内容取出用户并遍历,通过请求后端 HTTP 接口发送。比如有 10000 个用户


网友评论