redis:缓存预热、缓存雪崩、缓存击穿、缓存穿透
一.缓存预热
缓存预热就是系统启动前,提前将相关的缓存数据直接加载到缓存系统。避免在用户请求的时候,先查询数据库,然后再将数据缓 存的问题!用户直接查询事先被预热的缓存数据!
二.缓存雪崩
在一个较短的时间内,缓存中较多的key集中过期
缓存雪崩就是瞬间过期数据量太大,导致对数据库服务器造成压力。如能够有效避免过期时间集中,可以有效解决雪崩现象的出现 (约40%),配合其他策略一起使用,并监控服务器的运行数据,根据运行记录做快速调整
三.缓存击穿
是某一个热点key在高并发访问的情况下,突然失效,导致大量的并发打进mysql数据库的情况
使用分布式锁保证只有一个线程查询数据库,其他线程采用重试的方式进行获取
四.缓存穿透
1.redis大面积未命中
2.出现非正常的URL访问
解决办法:为不存在的key也设置一个空对象,但存的时间很短
后续会使用java代码去解决击穿和穿透的问题。。。。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步