redis缓存穿透、雪崩、热点key模版

    辞旧迎新, 闲来无事, 想想也该总结下, 发段redis的使用吧。 

    话说17年初, 项目db cpu利用率居高不下, 为了分散压力, 引入了redis, 作为db的缓存。 Redis api相对简单,但实际使用起来,缓存数据更新同步设计时遇到了很多困难。 查了很多资料,最终读到“Redis架构之防雪崩设计:网站不宕机背后的兵法”, 发现这就是我的药啊! 

    文章里面主要提到了3个方面:

    1) 穿透, 查询一个不存在的数据,由于缓存不命中,每次都要查询db。从而失去缓存的意义。

    2)雪崩, 缓存故障, 查询压力打到db, 导致db缓慢或崩溃。

    3) 热点key, 频发访问的key, 缓存失效后,会出现并发加载缓存的问题

    根据文章描述, 做了一个redis模版实例, 实现穿透,雪崩,热点key的保护 。 穿透通过伪空值实现, 雪崩使用hystrix保护,热点key用了redis锁机制。 

    实例参考:https://github.com/iceriver322/redisTemplate






你可能感兴趣的:(redis缓存穿透、雪崩、热点key模版)