Laravel-5.8 队列的清除问题

在使用laravel队列的时候,因为拉取数据的数量越来越多,所以从以前的单一队列改成了现在的多个队列来执行不同的任务。
然后现在遇到的问题是在4个队列同时进行任务的时候,其中一个队列卡死(补充说明:任务不是失败,只是因为卡住了,所以queue:failed 还有 retry 和 flush 等命令都是不能达到我的目的的。给第一位提供帮助的带来了误解,很抱歉),但是剩余三个队列正常执行。所以需要将指定的某一个队列全部移除再重新跑。
以前执行的命令都是全部清除:
    redis-cli;
    flushall;
或者重启:
    php artisan horizon:terminate
    supervisorctl reload
先贴个截图

laravel-5.8 队列的清除问题

想请教下,我该怎么只把a全部删除呢?
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 5

既然是卡死,那你没必要移除所有任务。只需要kill掉卡死的worker进程就可以了。
如果你不知道哪个worker卡死了,可以先用常规操作停止所有worker,停不掉的那个就是你需要kill掉的。

4年前 评论

php artisan queue:failed 列出任务 ID、连接、队列和失败时间,任务 ID 可用于重试失败任务,例如,要重试一个 ID 为 5 的失败任务,可以运行下面的命令:

php artisan queue:retry 5

要重试所有失败任务,运行如下命令即可:

php artisan queue:retry all

如果你要删除一个失败任务,可以使用 queue:forget 命令:

php artisan queue:forget 5

要删除所有失败任务,可以使用 queue:flush 命令:

php artisan queue:flush

4年前 评论
rensennance (楼主) 4年前

有一个包应该可以满足你的需求 morrislaptop/laravel-queue-clear
file
queue 参数支持选择队列名

4年前 评论
rensennance (楼主) 4年前
rensennance (楼主) 4年前

修改队列配置文件,每一个队列配置不同redis数据库,redis可以清除指定数据库的数据

4年前 评论

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