redis 问题

Posted 天河一粟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis 问题相关的知识,希望对你有一定的参考价值。

  1. 缓存穿透、缓存击穿、缓存雪崩
    问题原因解决        
    缓存穿透大量访问一个缓存数据库都不存在的 key,造成数据库压力瞬时增大,甚至导致数据库宕机1、拦截不符合规范的 key
    2、缓存空值,设置较短过期时间
    3、布隆过滤器,存储所有可能访问的 key,不存在的 key 直接被过滤
    缓存击穿一个热点 key,缓存过期瞬间,同时收到大量的请求,由于此时缓存过期了,所以请求最终都会走到数据库,造成数据库压力瞬时增大,甚至导致数据库宕机1、热点数据永久不过期,使用定时任务更新数据
    2、加互斥锁
    缓存雪崩大量的热点 key 设置了相同的过期时间,导致缓存在同一时刻全部失效,造成数据库请求瞬时增大、压力骤增,引起雪崩,甚至导致数据库宕机
    缓存雪崩其实有点像“升级版的缓存击穿”,缓存击穿是一个热点 key,缓存雪崩是一组热点 key
    1、设置不同过期时间
    2、热点数据永久不过期,使用定时任务更新数据
    3、加互斥锁

以上是关于redis 问题的主要内容,如果未能解决你的问题,请参考以下文章

Redis 数据持久化

SpringSpring缓存机制与Redis的结合

Redis实现分布式锁原理与实现分析

利用多写Redis实现分布式锁原理与实现分析

redis同步锁的真实应用场景

真正的 Redis 分布式锁,就该是这样实现的