Redis雪崩

什么是缓存雪崩?

就是缓存失效了,使得大量的请求落在了数据库上,然后导致数据库扛不住那么大的访问,直接崩了

原因:

1.缓存的服务器宕机,因为停电或者服务器本身一些原因等,或者硬件啥问题等

2.因为缓存同一时间失效,key的设置策略有点问题,key的过期时间应该随机设置

解决方案:

1.缓存预热: 对刚开启的服务,通过算法限制其不能访问数据库,等待数据从数据库中加载到缓存中,然后才能访问

2.key的存活时机随机,避免缓存同一时间失效

3.分布式锁,通过锁来控制访问量

4.Redis集群,通过Redis的集群,采用redis的哨兵,提高redis的高可用性,而不是采用主从模式

5.限流和降级,通过限流和降级策略,来保护后端系统,防止后端系统崩溃

6.设置备份缓存,也就是二级缓存,即便主缓存出问题了,那么副缓存可以顶上去

7.异步加载:使用异步加载到redis,减少对实时时间的依赖

(在这简单说一下什么是同步和异步吧?

同步就是系统发出请求之后,必须等到响应,有了响应之后,系统才能做下一件事

异步的话不同就是系统发出请求之后,无须等待响应,就可以做下一件事了,到时候响应通知就行了,这样就提高了效率,

)

8.监控和自动扩展资源,通过监控缓存的性能指标,如果发现资源不够用了,那么自动扩展资源

相关推荐
952366 小时前
Redis - 应用
数据库·redis·分布式·缓存
青山木6 小时前
一把 Redis 分布式锁,踩透四个坑:锁争抢、僵尸锁、锁过期、锁丢失
java·数据库·redis·后端
吴声子夜歌7 小时前
Redis 3.x——客户端
数据库·redis
衣乌安、7 小时前
Redis 分布式锁与任务状态
数据库·redis·分布式
不能只会打代码10 小时前
Day 002 — Python 工程化 & FastAPI & 数据库速通
数据库·redis·python·docker·fastapi·测试
吴声子夜歌12 小时前
Redis 3.x——事务与Lua
redis·lua
执笔论英雄15 小时前
【大模型推理】redis kv cache
数据库·redis·缓存
白露与泡影1 天前
Redis 缓存实战:雪崩、穿透、击穿一次讲透
数据库·redis·缓存
Steadfast_GG1 天前
Redis典型应用 - 缓存,缓存更新策略,内存淘汰策略,缓存预热,缓存穿透,缓存雪崩,缓存击穿
redis·缓存穿透·缓存击穿·缓存雪崩·缓存预热·缓存更新策略·内存淘汰策略
snow@li1 天前
Redis:数据库语法速查表 / 全景梳理
数据库·redis·缓存