Skip to content

Redis如何批量删除指定前缀的key?

方案一

keys命令 匹配相关key 然后全部删除

  • 优点:一次精确删除
  • 缺点:keys量非常大时,会造成阻塞,导致redis其他服务不可用。

方案二

SCAN 分批匹配 ,然后删除。

  • 优点:分批执行,不会造成阻塞。
  • 缺点:
    • 需要分多次执行,花费时间长。扫描结果可能存在重复情况,需要客户端去重。
    • count值不能太小,总数的10%左右比较合适。