Skip to content
进阶

一句话答案

热 Key 导致单节点瓶颈,解决:本地缓存(Caffeine)+ 读副本分担 + Key 打散到多节点。

核心要点

发现: 监控 QPS 异常 / redis-cli --hotkeys

解决:

  1. 本地缓存:JVM 内 Caffeine/Guava Cache
  2. 读副本:从节点分担读请求
  3. Key 打散:key_{random} 分散到多个节点,读取时随机选一个
追问与易错

追问方向:

  • 怎么发现热 Key?
  • 本地缓存和 Redis 怎么保持一致?
  • 多级缓存更新顺序?

易错点:

  • ❌ 加从库能解决热 Key——Cluster 中热 Key 只在一个 slot
  • ❌ 本地缓存不会过期——必须设 TTL

💡 记忆锚点

热Key = 网红奶茶店只有一家分店(单节点瓶颈)。解决:开JVM本地分店(Caffeine本地缓存)、让加盟店也能卖(读副本)、把招牌菜分到不同门店(key_{random}打散到多节点)。