Redis管理Laravel队列的问题

时间:2017-12-14 12:49:01

标签: php laravel redis queue

我使用Laravel forge和Redis作为队列驱动程序。

我已经更新了我的应用程序的代码,以便多次发送推送通知,但发送的通知与旧代码一样。

将队列驱动程序更改为数据库,根据最新更新发送通知。但是,当我将其切换回Redis时,它仍然显示旧版本的通知。

我通过redis-cli完成了“FLUSHALL”,但它没有解决它。

我也使用Laravel Horizo​​n来管理队列。

我如何解决这个问题?提前谢谢。

编辑:我注意到的其他事情是所有代码驱动的调度都在Redis上排队。我已经在答案中列出了解决方案,希望它可以帮助其他人。

2 个答案:

答案 0 :(得分:2)

我从Forge支持中收到的信息:

  

您好,

     

可能有一个工人被卡住了你可以尝试运行npm install这应该杀死所有流氓工人进程,然后   重启守护进程。建议你在你的运行中运行purge命令   部署脚本,以确保所有陈旧的进程都被终止。

     

- Mohamed Said forge@laravel.com

然而,我如何对它进行排序:

php artisan horizon:purge

php artisan horizon:terminate

然后代码正常运行

答案 1 :(得分:0)

停止redis,阻止Horizo​​n工作人员。启动redis然后启动地平线工作者。 但在这些之前都清除缓存。

我有类似的问题,在我的情况下,这只是重启所有服务的问题。