redis 问题
Posted 天河一粟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis 问题相关的知识,希望对你有一定的参考价值。
- 缓存穿透、缓存击穿、缓存雪崩
问题 原因 解决 缓存穿透 大量访问一个 缓存
和数据库
都不存在的 key,造成数据库压力瞬时增大,甚至导致数据库宕机1、拦截不符合规范的 key
2、缓存空值,设置较短过期时间
3、布隆过滤器,存储所有可能访问的 key,不存在的 key 直接被过滤缓存击穿 某 一个
热点 key,缓存过期瞬间
,同时收到大量
的请求,由于此时缓存过期了,所以请求最终都会走到数据库,造成数据库压力瞬时增大,甚至导致数据库宕机1、热点数据永久不过期,使用定时任务更新数据
2、加互斥锁缓存雪崩 大量的热点 key 设置了 相同
的过期时间,导致缓存在同一时刻全部失效,造成数据库请求瞬时增大、压力骤增,引起雪崩,甚至导致数据库宕机
缓存雪崩其实有点像“升级版的缓存击穿”,缓存击穿是一个热点 key,缓存雪崩是一组热点 key1、设置不同过期时间
2、热点数据永久不过期,使用定时任务更新数据
3、加互斥锁
以上是关于redis 问题的主要内容,如果未能解决你的问题,请参考以下文章