Redis 缓存穿透、击穿、雪崩分别是什么?怎么解决?缓存和数据库的一致性怎么保证?

一句话速记:缓存穿透指查询不存在的数据,可通过布隆过滤器或缓存空值防御;缓存击穿指热点数据失效瞬间高并发压垮数据库,可通过互斥锁或逻辑过期解决;缓存雪崩指大量缓存集中失效导致数据库过载,可通过设置随机过期时间(TTL 扰动)与多级缓存缓解。缓存与数据库一致性通常采用 Cache-Aside 模式(先更新数据库再删除缓存),结合 Binlog 监听与 MQ 异步重试保证最终一致性;若有强一致性要求则不宜仅依赖缓存。

Redis、缓存

同章节的其他八股