缓存问题二、缓存雪崩

缓存雪崩

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

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

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

面试回答:

  • 缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间所有原本应该访问缓存的请求都去查询数据库了,而对数据库 CPU 和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。一般有三种处理办法:
    *
    1. 一般并发量不是特别多的时候,使用最多的解决方案是加锁排队。
      1. 给每一个缓存数据增加相应的缓存标记,记录缓存的是否失效,如果缓存标记失效,则更新数据缓存。
      1. 为 key 设置不同的缓存失效时间。
相关推荐
AskHarries9 小时前
Redis 应该什么时候上
redis
桑榆肖物9 小时前
在 .NET MAUI 里接入 PP-OCRv6 文本检测实现查找并点击
数据库·redis·.net·maui
ffqws_18 小时前
Redis 分布式锁:基于 Redisson 的实现与面试高频问答
redis·分布式·面试
Leighteen1 天前
Redis与MySQL双写一致性:从问题根源到工程落地
数据库·redis·mysql
手握风云-1 天前
Redis:不只是缓存那么简单(十五)
数据库·redis·缓存
名字还没想好☜1 天前
用 Redis + Redisson 实现分布式锁:从踩坑到生产可用
java·redis·分布式·junit·分布式锁·redisson
谙忆1 天前
图片CDN与边缘优化实战:缓存策略、图片处理型CDN与动态裁剪
java·spring·缓存
qiu_lovejun9981 天前
linux安装docker和redis和rabbitmq和nginx和rocketmq和kafka
linux·redis·docker·kafka·rabbitmq·rocketmq
AI人工智能+电脑小能手1 天前
【大白话说Java面试题 第172题】【07_Redis篇】第8题:`setnx` 做分布式锁存在的问题
java·redis·分布式锁·死锁·setnx
吴声子夜歌1 天前
Redis 6.x——整合SpringBoot
数据库·spring boot·redis