队列为什么执行不全?

<?php

namespace App\Observers;

use App\Models\Topic;
use App\Jobs\baiduAi;
use App\Jobs\baiduAiContent;

class TopicObervers
{
    public function created(Topic $topic)
    {
        //百度智能文本内容分析
        dispatch(new baiduAiContent($topic));

        //百度智能标签及智能分类
        dispatch(new baiduAi($topic))->delay(now()->addMinutes(1));

    }
}

两个问题:
1、一个是为什么有时候两个都执行,有时候只执行第一个或者第二个。。。。
2、我如果用saving方法,很多地方都会莫名其妙的执行队列,比如毫不相干,model都不一样的reply,用户回复都会出发队列

日志里有个这样的报错:

Exception: Job is incomplete class: {"__PHP_Incomplete_Class_Name":"App\\Jobs\\baiduAiContent"} in /www/wwwroot/kmchannel_bak/aikm.cn/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php:117

Job代码应该没有问题,现在有2个新情况

1、如果我手动php artisan horizon跑起来就正常了
2、报错的目录是错误的目录,正确是的是kmchannel不是kmchannel_bak

Exception: Job is incomplete class: {“__PHP_Incomplete_Class_Name”:”App\Jobs\baiduAiContent”} in /www/wwwroot/kmchannel_bak/aikm.cn/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php:117

kmchannel_bak里根本就没有Job那个问题,所以肯定报错了,supervisor里是不是哪里出问题了

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 8
自由与温暖是遥不可及的梦想

这个时候 你应该 使用 事件

虽然不我知道你这个是为啥会这样

记录一下 待大佬给方案

2个月前 评论

执行的时候 是通过事务操作的吗?

2个月前 评论

把 Job 的代码贴上来

2个月前 评论
wongvio (楼主) 2个月前

supervisor 权限看下是不是有问题

2个月前 评论
萧瑟 (作者) 2个月前

用的是 redis 队列么。。 我用的也是这个 量大的时候就感觉会丢失队列的数据?

2个月前 评论

supervisor配置更新后,要执行supervisorctl update命令才生效

1周前 评论

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