加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

什么会阻止队列中的作业处理? [PHP / Laravel 5]

发布时间:2020-12-14 19:48:09 所属栏目:大数据 来源:网络整理
导读:我在Laravel 5中设置了一个队列来删除公司和相关记录.每次发生这种情况时,后端都会发生很多工作,所以队列是我最好的选择. 我将config / queue.php文件与我的.env文件一起设置,以便使用数据库驱动程序.我正在使用Queue :: pushOn方法将作业推送到名为company_
我在Laravel 5中设置了一个队列来删除公司和相关记录.每次发生这种情况时,后端都会发生很多工作,所以队列是我最好的选择.

我将config / queue.php文件与我的.env文件一起设置,以便使用数据库驱动程序.我正在使用Queue :: pushOn方法将作业推送到名为company_deletions的队列中.防爆.

Queue::pushOn('company_deletions',new CompanyDelete($id));

其中CompanyDelete是使用php artisan命令创建的命令:make CompanyDelete –queued

我试图使用以下命令让我的队列进行处理:

php artisan queue:work
php artisan queue:work company_deletions
php artisan queue:listen
php artisan queue:listen company_deletions
php artisan queue:work database
php artisan queue:listen database

有时在查看上述命令的输出时,我收到以下错误:

[InvalidArgumentException]  
No connector for []

即使我没有收到错误,我也无法让它因某种原因实际处理作业.当我查看我的作业表时,我可以在队列中看到作业,但是尝试列显示0,保留显示0和reserved_at为空.我错过了一些步骤吗?我已经多次查看了文档,并且不能为我的生活弄清楚出了什么问题.我也没有在laravel错误日志中看到任何内容.什么会阻止这些作业进入作业数据库后被处理?任何帮助表示赞赏.

我遇到了一个熟悉的问题,因为我没有在默认队列中添加作业.
$job = (new EmailJob(
            $this->a,$this->b,$this->c,$this->d,$e
        ))->onQueue('emails');

然后我必须听取具体的队列:

php artisan queue:listen --queue=emails

在你的情况下,它会

php artisan queue:listen --queue=company_deletions

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读