加载中...

缓存雪崩指两类场景:一是大批缓存键设置了相同或相近的过期时间,在同一时刻集中失效;二是缓存服务本身宕机或整体不可用。两者都会让本由缓存承接的读流量瞬间全部落到数据库,造成响应变慢、连接耗尽,甚至沿调用链向上蔓延成系统级故障。
典型诱因包括:批量预热时统一设置 TTL、整点任务集中写入同 TTL 数据、缓存集群单点故障或容量误配。
针对集中过期:在基础 TTL 上叠加随机抖动(如加上一段随机分钟数),把失效时间打散;核心数据可用逻辑过期加后台刷新。针对缓存宕机:部署高可用架构(Redis 哨兵/集群、多副本)、多级缓存(本地缓存兜底)兜住部分流量;同时在服务层配置限流、熔断与降级,保证数据库不被打死、核心链路可返回降级数据。
雪崩防护本质是容量与故障演练问题,需通过压测验证「缓存全失效」下系统的存活能力。

登录 后参与讨论
暂无讨论,来发表第一条评论吧