当前位置: 首页 > news >正文

Redis缓存雪崩事故复盘!

事故背景

公司最近安排了一波商品抢购活动,由于后台小哥操作失误最终导致活动效果差,被用户和代理商投诉了。经理让我带同事们一起复盘这次线上事故。

什么原因造成的?

抢购活动计划是零点准时开始,

22:00 运营人员通过后台将商品上线

23:00后台小哥已经将商品导入缓存中,提前预热

抢购开始的瞬间流量非常大,按计划是通过Redis承担大部分用户查询请求,避免请求全部落在数据库上。

缓存命中

如上图预期大部分请求会命中缓存,但是由于后台小哥预热缓存的时候将所有商品的缓存时间都设置为2小时过期,所有的商品在同一个时间点全部失效,瞬间所有的请求都落在数据库上,导致数据库扛不住压力崩溃,用户所有的请求都超时报错。

实际上所有的请求都直接落到数据库,如下图:

缓存雪崩

什么时候发现的?

凌晨01:02 SRE 收到系统告警,登录运维管理系统发现数据库节点 CPU和内存飙升超过阈值,迅速联系后台开发人员定位排查。

为什么没有早点发现?

由于缓存设置过期时间是2小时,凌晨1点前缓存可以命中大部分请求,数据库服务处于正常状态。

发现时采取了什么措施?

后台小哥通过日志定位排查发现问题后,进行了一系列操作:

首先通过API Gateway(网关)限制大部分流量进来

接着将宕机的数据库服务重启

再重新预热缓存

确认缓存和数据库服务正常后将网关流量正常放开,大约01:30 抢购活动恢复正常。

如何避免下次出现?

这次事故的原因其实就是出现了缓存雪崩,查询数据量巨大,请求直接落到数据库上,引起数据库压力过大宕机。

在业界解决缓存雪崩的方法其实比较成熟了,比如有:

  • 均匀过期

  • 加互斥锁

  • 缓存永不过期

(1)均匀过期

设置不同的过期时间,让缓存失效的时间点尽量均匀。通常可以为有效期增加随机值或者统一规划有效期。

缓存key过期时间均匀分布

(2)加互斥锁

跟缓存击穿解决思路一致,同一时间只让一个线程构建缓存,其他线程阻塞排队。

互斥访问

(3)缓存永不过期

跟缓存击穿解决思路一致,缓存在物理上永远不过期,用一个异步的线程更新缓存。

异步更新缓存

http://www.jsqmd.com/news/1190061/

相关文章:

  • 上海地坪品牌质量实测排行 5家合规企业核心能力对比 - 互联网科技品牌测评
  • 2026 抖店一件代发新手必备软件:合规拍单 ERP 免费付费盘点_文章一 - 抖大侠
  • 2026 年鹤庆专业的宗祠石牌坊批发厂家哪家强,揭秘:老祠堂里那些石牌坊背后的家族秘密 - 行业鉴选官
  • 全品类数据整理:2026压力变送器10大品牌排名汇总,广东犸力上榜行业排行榜 - 品牌速递
  • TensorBoard数据不显示的五大排查路径与实战修复指南
  • 【需求工程】统一建模语言UML类图中关联、多样性和角色
  • 输入一个关键词,AI 拍完整条短视频——项目开源,整合包一键运行
  • 2026年7月最新苏州雷达官方售后服务网点地址及客服电话一览 - 亨得利钟表维修中心
  • 雪山牧城黄金变现指南|2026 肃北蒙古族自治县合规贵金属回收全维度测评 - 福金阁黄金回收
  • 2026年7月最新昆明卡地亚官方售后维修服务网点地址与客服电话 - 卡地亚服务中心
  • 庄浪县黄金回收市场实测测评|计价透明、无损检测、全城网点全覆盖,卖黄金避坑指南 - 福金阁黄金回收
  • PIC18F85J50与CMT-8540S-SMT组合在嵌入式音频方案中的应用
  • Keyboard Chatter Blocker:3步解决机械键盘连击问题的智能方案
  • 推荐系统中时间分布迁移的ELBO自监督学习实践
  • 2026 沈阳浑南区管道疏通、下水改造、马桶地漏返水维修 靠谱疏通服务推荐前三名 (7 月本地调研参考榜单) - 资讯纵览
  • 影刀RPA实现天猫千牛店铺装修自动化实战指南
  • Claude Code接入DeepSeek API:终端AI编程助手配置指南
  • 上海地坪漆品牌排行:5家合规企业实测对比 - 互联网科技品牌测评
  • 2026精密伺服模组力矩传感器品牌榜单发布,广东犸力高端十大品牌首选 - 品牌速递
  • 2026 抖店自动拍单软件推荐 合规与风险说明 - 抖大侠
  • JavaSE初学---运算符
  • 【P3397地毯】二维地毯覆盖计数
  • 合肥瑶海区公司变更哪家专业?2026靠谱机构推荐 - 小柏云
  • ComfyUI面部修复不翻车:零代码调参法+权重衰减公式(附17组实测Lora融合参数)
  • 国内清水砼厂家实力排行:从性能到场景适配 - 互联网科技品牌测评
  • 低采样率ISAR成像的稀疏重建方法及其实时实现
  • 2026年7月最新扬州积家官方售后热线及客户服务网点地址 - 积家官方售后服务中心
  • 多开手游用什么模拟器最好?MuMu 模拟器 6.0 多开硬核测评
  • 6华亭黄金回收避坑攻略!本地实测3家靠谱门店,高位变现不亏一分钱 - 福金阁黄金回收
  • C++坐标系统实现指南:从原理到工程实践