redis关于缓存雪崩和缓存穿透,热点key
穿透
穿透:频繁查询一个不存在的数据,由于缓存不命中,每次都要查询持久层。从而失去缓存的意义。
解决办法: 持久层查询不到就缓存空结果,查询时先判断缓存中是否exists(key) ,如果有直接返回空,没有则查询后返回,
注意insert时需清除查询的key,否则即便DB中有值也查询不到(当然也可以设置空缓存的过期时间)
雪崩
雪崩:缓存大量失效的时候,引发大量查询数据库。
解决办法:
①用锁/分布式锁或者队列串行访问
②缓存失效时间均匀分布
热点key
热点key:某个key访问非常频繁,当key失效的时
原创
2021-11-16 09:42:09 ·
636 阅读 ·
0 评论