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

Redis篇之缓存雪崩

一、什么的缓存雪崩

        缓存雪崩:在同一时间段大量的缓存key同时失效或者redis服务宕机,导致大量请求到达数据库给数据库带来巨大压力,可能导致数据库崩了。

二、应该怎么解决

        1.给不同的Key的TTL添加随机值

        2.利用Redis集群提高服务的可用性

        3.给缓存业务添加降级限流策略

        4.给业务添加多级缓存

三、面试的时候应该怎么说

面试官:什么是缓存雪崩 ? 怎么解决 ?

候选人

缓存雪崩意思是设置缓存时采用了相同的过期时间,导致缓存在某一时刻同时失效,请求全部转发到DB,DB 瞬时压力过重雪崩。与缓存击穿的区别:雪崩是很多key,击穿是某一个key缓存。

解决方案主要是可以将缓存失效时间分散开,比如可以在原有的失效时间基础上增加一个随机值,比如1-5分钟随机,这样每一个缓存的过期时间的重复率就会降低,就很难引发集体失效的事件。

四、总结

        参考黑马程序员的打油诗:

相关文章:

  • OpenAI研究揭示:ChatGPT对生物武器制造影响有限
  • PKI - 04 证书授权颁发机构(CA) 数字证书
  • Leetcode 322 零钱兑换
  • Hadoop搭建(完全分布式)
  • TI的电量计驱动在卸载时导致Linux卡死
  • C++ dfs搜索枚举(四十九)【第九篇】
  • Spark安装(Yarn模式)
  • WebAssembly002 FFmpegWasmLocalServer项目
  • 单选全选功能实现
  • k8s弃用docker后使用ctr导入镜像
  • 代码随想录算法训练营29期|day43 任务以及具体任务
  • leetcode-hot100树的专题
  • 验证码倒计时:用户界面的小细节,大智慧
  • 多维时序 | Matlab实现RF-Adaboost随机森林结合Adaboost多变量时间序列预测
  • SSL协议是什么?关于SSL和TLS的常见问题解答
  • [case10]使用RSQL实现端到端的动态查询
  • Codepen 每日精选(2018-3-25)
  • es6--symbol
  • es6要点
  • happypack两次报错的问题
  • Javascript 原型链
  • Laravel 菜鸟晋级之路
  • mysql_config not found
  • PaddlePaddle-GitHub的正确打开姿势
  • php面试题 汇集2
  • spring + angular 实现导出excel
  • Sublime text 3 3103 注册码
  • use Google search engine
  • Vim 折腾记
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 后端_ThinkPHP5
  • 讲清楚之javascript作用域
  • 精彩代码 vue.js
  • 聊聊directory traversal attack
  • 算法---两个栈实现一个队列
  • Prometheus VS InfluxDB
  • ​低代码平台的核心价值与优势
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • #控制台大学课堂点名问题_课堂随机点名
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (C#)获取字符编码的类
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (顺序)容器的好伴侣 --- 容器适配器
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (四)TensorRT | 基于 GPU 端的 Python 推理
  • (转)人的集合论——移山之道
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .NET MVC 验证码
  • .net MySql
  • .net 怎么循环得到数组里的值_关于js数组
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @ResponseBody