缓存问题二、缓存雪崩

缓存雪崩

  1. 缓存雪崩 :是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。

  2. 缓存雪崩的解决方案:

    • 给不同的Key的TTL添加随机值
    • 利用Redis集群提高服务的可用性
    • 给缓存业务添加降级限流策略
    • 给业务添加多级缓存(添加多种不同的缓存,比如nginx等等)

面试回答:

  • 缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间所有原本应该访问缓存的请求都去查询数据库了,而对数据库 CPU 和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。一般有三种处理办法:
    *
    1. 一般并发量不是特别多的时候,使用最多的解决方案是加锁排队。
      1. 给每一个缓存数据增加相应的缓存标记,记录缓存的是否失效,如果缓存标记失效,则更新数据缓存。
      1. 为 key 设置不同的缓存失效时间。
相关推荐
柚几哥哥1 分钟前
Redis 优化实践:高性能设备缓存系统设计
数据库·redis·缓存
難釋懷23 分钟前
Redis数据结构介绍
数据结构·数据库·redis
indexsunny43 分钟前
互联网大厂Java面试实战:核心技术与微服务架构解析
java·数据库·spring boot·缓存·微服务·面试·消息队列
想摆烂的不会研究的研究生1 小时前
并发场景——接口幂等性设计
数据库·redis·后端·缓存
编程大师哥1 小时前
C++ 中解锁 Redis
开发语言·c++·redis
忧郁的Mr.Li2 小时前
Redis的过期删除策略和内存淘汰策略
数据库·redis·缓存
Mr__Miss2 小时前
Redis的多级缓存
数据库·redis·缓存
风之子npu2 小时前
CPU基础知识-缓存的基本概念
缓存
MSTcheng.2 小时前
【C++】开放定址法实现哈希表!
c++·缓存·stl·散列表·哈希
海上飞猪2 小时前
【Redis】Redis基础与测试环境搭建(Mac版)入门
数据库·redis·macos