laravel异步队列发送curl请求超时错误

异步队列中执行curl请求,队列会一直pending直到失败,curl结果在info中已经记录,说明运行了,而且在1-2秒钟内就已经完成,不知道问题出在哪里。
通过排查发现只有发送请求会出现这种情况,现在代码里只有发送curl的代码,有没有碰到过这种问题的朋友

Illuminate\Queue\MaxAttemptsExceededException: App\Jobs\GoodsUploadSyncJob has been attempted too many times or run too long. The job may have previously timed out.
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 4

这个提示不是很清楚吗?要么重试次数太多要么就是超时执行,检查一下你的队列配置。

   /** 
    * 最长运行时间
   */
    public int $timeout = 3500;

    /**
     * 解除任务唯一锁的秒数
     */
    public int $uniqueFor = 600;

    //允许异常次数
    public int $maxExceptions = 10;

    /**
     * 任务可尝试的次数
     */
    public int $tries = 9;
4个月前 评论
shuhui 4个月前
springlee (作者) 4个月前

curl 请求太长时间了,所以建议检查你这请求是什么情况,为什么如此耗时,一般请求建议加个超时时间, 因为请求时间过长,导致job超时(job默认超时时间为60s)。

具体你的job有可以有哪些属性可以看下这个 \Illuminate\Queue\WorkerOptions

4个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!