数据库答题框架Redis 缓存设计
如何避免缓存雪崩、缓存击穿、缓存穿透?
先把三类问题定义清楚:穿透是查不存在的数据,击穿是热点 key 失效,雪崩是大量 key 同时失效或 Redis 整体不可用。 穿透用参数校验、布隆过滤器和空值短 TTL 缓存;击穿用互斥锁、逻辑过期、热点预热;雪崩用过期时间加随机抖动、多级缓存、限流降级和 Redis 高可用。
面试数据库
答题框架
当前只提供答题框架,不代表已经完成事实与工程边界复核。
这题可以按「结论 -> 原理 -> 场景 -> 风险」来答,重点放在数据库里的可落地理解。
答题要点:
1. 先把三类问题定义清楚:穿透是查不存在的数据,击穿是热点 key 失效,雪崩是大量 key 同时失效或 Redis 整体不可用。
2. 穿透用参数校验、布隆过滤器和空值短 TTL 缓存;击穿用互斥锁、逻辑过期、热点预热;雪崩用过期时间加随机抖动、多级缓存、限流降级和 Redis 高可用。
3. 落到项目里要补充监控指标:命中率、热点 key、回源 QPS、Redis 延迟和失败率,避免只讲概念。
容易被追问:
- 如果热点 key 重建很慢怎么办?
- 布隆过滤器误判会带来什么影响?
注意事项:
- 不要把击穿和雪崩混为一谈。
- 不要只说加缓存,必须说明过期、并发和回源保护。
答题练习
- 1先把三类问题定义清楚:穿透是查不存在的数据,击穿是热点 key 失效,雪崩是大量 key 同时失效或 Redis 整体不可用。
- 2穿透用参数校验、布隆过滤器和空值短 TTL 缓存;击穿用互斥锁、逻辑过期、热点预热;雪崩用过期时间加随机抖动、多级缓存、限流降级和 Redis 高可用。
- 3落到项目里要补充监控指标:命中率、热点 key、回源 QPS、Redis 延迟和失败率,避免只讲概念。
常见错误
- 不要把击穿和雪崩混为一谈。
- 不要只说加缓存,必须说明过期、并发和回源保护。
可能追问
- 如果热点 key 重建很慢怎么办?
- 布隆过滤器误判会带来什么影响?
来源记录
- 原始来源
- 小林coding
- 来源页面
- Redis 常见面试题
- 最近收录
- 2026-07-04
- 官方复核
- Redis 常见面试题、认识 Redis、什么是 Redis?、Redis 和 Memcached 有什么区别?、为什么用 Redis 作为 MySQL 的缓存?、Redis 数据结构、Redis 数据类型以及使用场景分别是什么?、五种常见的 Redis 数据类型是怎么实现?、Redis 线程模型、Redis 是单线程吗?、Redis 单线程模式是怎样的?、Redis 采用单线程为什么还这么快?