缓存问题二、缓存雪崩

缓存雪崩

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

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

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

面试回答:

  • 缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间所有原本应该访问缓存的请求都去查询数据库了,而对数据库 CPU 和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。一般有三种处理办法:
    *
    1. 一般并发量不是特别多的时候,使用最多的解决方案是加锁排队。
      1. 给每一个缓存数据增加相应的缓存标记,记录缓存的是否失效,如果缓存标记失效,则更新数据缓存。
      1. 为 key 设置不同的缓存失效时间。
相关推荐
小茴香35311 小时前
HTTP缓存
网络协议·http·缓存·面试
Gh0st_Lx11 小时前
【9】面试官:讲一下MySQL 和 Redis 的缓存一致性问题
redis·mysql·缓存
2401_8788204713 小时前
Redis+Lua脚本实现全局令牌桶限流
数据库·redis·lua
身如柳絮随风扬13 小时前
Redis 主从复制与哨兵机制详解:从原理到高可用实战
数据库·redis·缓存
Plastic garden15 小时前
Redis(2) redis的高可用
java·数据库·redis
CAE虚拟与现实16 小时前
重置系统后,Postgresql不用重装
数据库·redis·postgresql·kafka
java1234_小锋16 小时前
Redis 支持哪些数据类型?请分别说明它们的使用场景
java·数据库·redis
1892280486117 小时前
NY386固态MT29F32T08GWLBHD6-T:B
大数据·服务器·人工智能·科技·缓存
半夜修仙17 小时前
Redis中String数据类型的常见命令
数据库·redis·缓存
LB211218 小时前
消灭并发重复调用:基于 Agent 调用 LLM 的分布式 Single-Flight 实战
java·开发语言·redis·分布式·agent