·更新于 2026年4月21日· 118 次浏览 Redis缓存

Redis 实战:穿透、击穿、雪崩与布隆过滤器

缓存与 DB 之间的典型故障模式及工程对策:空值缓存、互斥重建、随机 TTL、多级缓存与概率型数据结构。

Redis 实战:穿透、击穿、雪崩与布隆过滤器
ZHOU YI

作者

ZHOU YI

缓存穿透指大量请求查询不存在的数据,绕过缓存直击 DB。可对合法不存在结果做短 TTL 空值缓存,或对请求参数做布隆过滤器预判。

击穿与雪崩

  • 击穿:热点键过期瞬间并发重建。可用互斥锁(单飞)或逻辑过期 + 异步刷新
  • 雪崩:大量键同时过期。TTL 加随机抖动,必要时多级缓存(本地 + Redis)
redis
# 示例:SET key value EX ttl NX 实现简单互斥
SET lock:product:1001 1 EX 10 NX

Redis 单线程执行命令,但网络 I/O 与持久化子进程仍会与 CPU、磁盘争用;大 value、热 key、慢命令(KEYS、无上限 SORT)都是线上常见瓶颈。

Guestbook

留言

若这篇文章也曾停在你心上,留一行字吧,我会看的。

先确认一下邮箱

多这一步,是为了少些机器骚扰,也让我能更踏实地读每一条真人写下的字。验证码 10 分钟内有效;同一邮箱 60 秒内只能发一封。

本文留言

0已加载 0

这里还静悄悄的——愿意做第一个留下脚印的人吗?