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

第十五课:缓存三大灾难——穿透、击穿、雪崩的系统解法

这一课是Redis 真正进入工程阶段的标志
前一课你学的是“怎么用缓存”,
这一课学的是:

缓存出问题时,系统怎么不崩。

很多公司线上事故,80% 都和这三件事有关。

一、为什么会有“缓存灾难”?

理想情况:

请求 → Redis → 返回

现实情况:

请求绕过 Redis → 打爆 MySQL

当 Redis 失效或设计不当,
数据库瞬间被冲垮。

二、缓存穿透(Cache Penetration)

现象

用户请求一个数据库根本不存在的数据

例如:

/product/99999999

Redis 没有
MySQL 也没有
每次都查数据库。

攻击者可以疯狂请求不存在 ID,
数据库直接被打爆。

解决方案

1. 空值缓存(最常用)

if (db查不到) { redis.set(key, "null", 60秒); }

2. 布隆过滤器(进阶)

提前判断:

这个 ID 是否可能存在

不存在直接拒绝。

三、缓存击穿(Cache Breakdown)

现象

某个热点 Key 过期
瞬间大量请求同时打到数据库。

例如:

热门商品详情

TTL 到期那一秒,
几万请求直冲 MySQL。

解决方案

1. 互斥锁(最经典)

只允许一个线程查数据库:

SETNX lock

其他线程等待缓存回填。

2. 永不过期 + 后台更新

缓存不设置 TTL,
由后台定时刷新。

四、缓存雪崩(Cache Avalanche)

现象

大量 Key同一时间过期

10万缓存 → 同时失效

瞬间全部请求冲数据库。

解决方案

1. TTL 随机化

TTL = 基础时间 + 随机值

避免同一时刻过期。

2. 多级缓存

本地缓存 + Redis + MySQL

五、三者对比一眼看懂

问题本质场景
穿透查不存在恶意攻击
击穿热点过期高并发
雪崩批量过期大规模缓存

六、工程师级一句话记忆

  • 穿透:查空气

  • 击穿:热点炸

  • 雪崩:集体死

下一篇:

第15课 · 实战篇:缓存三大灾难落地防御(穿透/击穿/雪崩)

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

相关文章:

  • 第五章 part01
  • 2026上海公墓推荐:汇龙园墓园、传统中式墓、双朝南墓、左右放墓、艺术墓、草坪葬、花坛葬、树葬、壁葬、16万墓、生态葬,殡葬服务优选 - 海棠依旧大
  • 从 SAS 到 MAS:构建高效、可扩展的 AI Agent 架构演进
  • 探索大数据领域 Hadoop 的分布式存储奥秘
  • FPGA信息交互的奇妙之旅:PCle与光纤协同工作探秘
  • BISHI19 乒乓球
  • 2026年上海福寿园公墓参考:福寿园墓地、福寿园墓园、福寿园传统中式墓、福寿园双朝南墓、福寿园草坪葬、福寿园花坛葬、福寿园树葬、福寿园壁葬、福寿园16万墓、人文纪念与生态安葬的践行者 - 海棠依旧大
  • 获取类的内容
  • 2026年上海公墓优质机构参考:上海清竹园、清竹园传统中式墓、清竹园双朝南墓、清竹园草坪葬、清竹园花坛葬、清竹园树葬、清竹园壁葬、清竹园16万墓、兼具人文底蕴与生态质感 - 海棠依旧大
  • 解析大数据领域存算分离的市场需求
  • 【小程序毕设全套源码+文档】基于Android的高校社团管理小程序的设计与实现(丰富项目+远程调试+讲解+定制)
  • 通过docker搭建windows的KMS激活工具
  • 【小程序毕设源码分享】基于springboot+Android的成人教育APP的设计与实现(程序+文档+代码讲解+一条龙定制)
  • 细胞多尺度仿真软件:MCell_(4).MCell的用户界面与基本操作
  • 【小程序毕设源码分享】基于springboot+Android宠物饲养管理APP的设计与实现(程序+文档+代码讲解+一条龙定制)
  • 细胞多尺度仿真软件:CellSys_(10).模型验证与优化
  • 从巴菲特投资看A股投资机会
  • 【小程序毕设源码分享】基于springboot+小程序的电影信息推荐APP的设计与实现(程序+文档+代码讲解+一条龙定制)
  • 浏览器编译后有2个图标-----没用
  • 【小程序毕设源码分享】基于springboot+Android的大学生勤工助学管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)
  • Flutter 混合开发:WebView 与原生完美融合实战
  • 【小程序毕设全套源码+文档】基于Android的电影信息推荐APP的设计与实现(丰富项目+远程调试+讲解+定制)
  • 大数据Storm:为企业实时数据处理保驾护航
  • AI语音识别在智能家居应用中的落地实践
  • 【小程序毕设全套源码+文档】基于Android的汉服交易小程序的设计与实现(丰富项目+远程调试+讲解+定制)
  • 【小程序毕设全套源码+文档】基于Android宠物饲养管理APP的设计与实现(丰富项目+远程调试+讲解+定制)
  • 深入解析:基于Qwen2-VL+LayoutLMv3的智能文档理解系统:从OCR到结构化知识图谱的落地实践
  • 高性能非加密哈希:mmh3 与 xxHash 对比
  • 机器学习特征工程:分类变量的数值化处理方法
  • vector