Redis缓存三大难题:击穿、雪崩、穿透
正常缓存使用流程Redis 充当数据库的挡箭牌用户请求过来优先查询 Redis 缓存✅缓存命中直接返回缓存数据不访问数据库❌缓存未命中查询 MySQL 数据库数据库查到数据把数据写入 Redis设置过期时间返回结果供后续请求复用数据库也查不到数据返回空 / 业务异常、1. 缓存击穿现象 原因某一个热点 key 失效大量并发打向数据库冷门 key 突然变成热点key 刚好过期。大量并发同时绕过 Redis直接请求数据库。数据库压力瞬间飙升多线程重复查库、重复写 Redis浪费系统资源解决方案永不过期策略热点 key 设置为永不过期冷门 key 正常过期也可监控访问量流量暴涨时动态改成永不过期。加锁排队双重检查锁缓存未命中时加锁只放行一个线程去查库 回填缓存其他线程等待。 释放锁之后其他线程再次读取缓存直接拿到数据。单机用本地同步锁就够用分布式场景使用分布式锁。2. 缓存雪崩定义 成因大量 key 同时失效 / Redis 整体宕机大量请求全部打到数据库系统直接崩溃大量缓存 key 集中同一时间过期缓存大面积失效Redis 服务宕机、集群故障 影响范围是全量业务整个服务不可用危害最大。解决方案过期时间增加随机偏移值打散过期时间避免集体失效Redis 高可用部署哨兵、Redis 集群防止单点宕机多机房灾备降级做好服务熔断限流Redis 挂掉保护数据库。3. 缓存穿透定义 危害查询的数据Redis、数据库里都不存在一般是恶意攻击传入伪造、非法的 ID。缓存查不到数据库也查不到但是每一次请求都要访问数据库大量请求压垮存储。正常业务很少出现攻击场景危害巨大。解决方案参数校验提前拦截非法参数负数、非法格式 ID但是无法拦截格式合法但实际不存在的 ID。缓存空值数据库查不到也把空结果存入 Redis设置较短随机过期时间拦截后续相同请求。布隆过滤器把合法存在的 ID 预先存入布隆过滤器请求先过过滤器判断不存在直接返回不访问缓存和数据库。节省内存适合防攻击。

相关新闻

从Alpha-Beta剪枝到增量评估:构建高性能五子棋AI的核心技术解析

从Alpha-Beta剪枝到增量评估:构建高性能五子棋AI的核心技术解析

1. 项目概述:一个现象级开源五子棋AI的诞生如果你在GitHub上搜索过“Gomoku”或者“五子棋”,大概率会刷到几个星标数(Star)高得吓人的项目。它们往往拥有简洁的README,清晰的代码结构,以及一个看起来“聪明…

2026/10/14 3:43:12 阅读更多 →
树莓派Debian系统打造复古游戏站:从系统优化到模拟器配置全攻略

树莓派Debian系统打造复古游戏站:从系统优化到模拟器配置全攻略

1. 项目概述:当树莓派遇上Debian,不止是游戏手头有一块树莓派,刷上了纯净的Debian系统,除了让它跑跑服务、做做智能家居中枢,你是不是也想过用它来干点“不务正业”的事?比如,打打游戏。没错&am…

2026/10/13 13:24:53 阅读更多 →
我花了三小时重玩暗黑2:D2DX高清补丁从安装到满屏高帧率全记录

我花了三小时重玩暗黑2:D2DX高清补丁从安装到满屏高帧率全记录

我花了三小时重玩暗黑2:D2DX高清补丁从安装到满屏高帧率全记录 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx D…

2026/10/2 6:35:38 阅读更多 →

最新新闻

西安同城货运软件开发实战指南:从架构到部署全流程解析

西安同城货运软件开发实战指南:从架构到部署全流程解析

西安同城货运软件开发实战指南:从架构到部署全流程解析 在西安,同城货运市场随着城市发展与电商渗透持续扩容,对应的软件开发需求也日益旺盛。无论是传统物流企业转型,还是创业团队入局,一套稳定、可扩展的同城货运系统…

2026/10/14 3:43:39 阅读更多 →
OneForAll 子域名收集工具

OneForAll 子域名收集工具

OneForAll 子域名收集工具以下内容带有个人主观看法,不一定适用于所有场景,欢迎交流指正。写在前面 信息收集往往是安全测试里最容易被低估、却最能拉开差距的一步。子域名收集尤其如此:你掌握的攻击面越完整,后续的漏洞发现和风险…

2026/10/14 3:43:39 阅读更多 →
AI培训的本质:数据工程、模型调优与系统集成三位一体

AI培训的本质:数据工程、模型调优与系统集成三位一体

1. 这不是“学AI”,而是构建一套可迁移的智能系统思维“AI培训主要学什么?”——这个问题我被问了不下两百次,提问者里有刚毕业想转行的应届生,有做了十年传统开发想补课的工程师,也有某高校教务处老师在为新设专业做课…

2026/10/14 3:43:39 阅读更多 →
python 数据契约层FastAPI+Pydantic(一)

python 数据契约层FastAPI+Pydantic(一)

数据锲约层:请求数据的解析/校验,响应数据的序列化/过滤,以及生成OpenAPI的文档,一 序列化 序列化的本质解决三个问题:内存对象->可传输字节(网络)、可存储字节(磁盘/缓存&#…

2026/10/14 3:43:39 阅读更多 →
西安同城货运系统源码实战开发指南:从架构到部署全流程解析

西安同城货运系统源码实战开发指南:从架构到部署全流程解析

西安同城货运系统源码实战开发指南:从架构到部署全流程解析 随着西安城市规模的扩张与电商物流需求的激增,同城货运系统已成为本地生活服务领域的关键基础设施。对于技术团队或创业者而言,获取一套成熟、可定制的西安同城货运系统源码&#x…

2026/10/14 3:43:39 阅读更多 →
PT对称系统在COMSOL中的仿真与应用研究

PT对称系统在COMSOL中的仿真与应用研究

1. 项目背景与核心价值在光学和电磁学领域,PT对称系统(Parity-Time Symmetric Systems)正成为前沿研究热点。这种特殊结构最早由量子力学领域提出,近年来在经典波系统中实现了突破性应用。我们团队使用Comsol Multiphysics对波导、…

2026/10/14 3:42:39 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →