Laravel 清空 Redis 队列

作者: hedeqiang

发布时间: 2020-01-09 14:31:01

先说问题,我的网站搜索使用的 Laravel Scout + Algolia

因为 Algolia 是收费的,免费版有容量限制。免费版应该是如下的限制:

file

一旦你的 计划超出配额,那么 Laravel 队列就会一直失败。失败他会重试导致 ,队列一直累加、一直累加.....

file

可以看出 我的队列 ID 都到了 6w + ,而且一直在加,导致其他队列都只能排队等着。

所以找到如下两种方式:

Redis 添加前缀

'redis' => [
   'client' => env('REDIS_CLIENT', 'phpredis'),
    'options' => [
        'cluster' => env('REDIS_CLUSTER', 'redis'),
        'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_redis'),
    ],
],

这种方式可以避免 假如你有很多个 Laravel 项目,避免出现混淆。

简单粗暴 删除 Redis 数据

redis-cli
//删除 Redis 数据
flushall 

慎用 第二种方式,万一你的 Redis 有重要数据 岂不毁了? 比如我,把所有的访问量都清空了.......

关于极客返利

极客返利 是由我个人开发的一款网课返利、返现平台。包含 极客时间返现、拉勾教育返现、掘金小册返现、GitChat返现。目前仅包含这几个平台。后续如果有需要可以考虑其他平台。 简而言之就是:你买课,我返现。让你花更少的钱,就可以买到课程。

https://geek.laravelcode.cn

https://geek.idaka.ink

版权许可

本作品采用 知识共享署名 4.0 国际许可协议 进行许可。

转载无需与我联系,但须注明出处,注明文章来源 Laravel 清空 Redis 队列