缓存雪崩:缓存命中率很低导致大量的数据请求被分发到数据库,效果就是响应时间变的很长以至于客户端体验感降到了冰点。
导致命中率很低的一个重要的原因就是大量的缓存在同一个时间节点失效。另外就是缓存挂掉。
那么解决方案呢?
1、当我们从缓存中取不到值的时候,则给这个key加锁。是的后续的请求进行排队,在排队的过程当中,从数据库中把数据加载到缓存。
2、过期时间的设置,尽量分散,避免在同一个时间节点出现大面积缓存过期的情况。
3、针对于缓存挂掉这个原因。首先redis绝对不是单点的,至少是一个一主两从的集群模式。
其次,做多级缓存。多级缓存的目的有两个:一、使用不同的缓存中间件缓存不同类型的数据;二、保证当其中一个缓存失效的时候,会有另一个缓存继续做支撑。
redis应用之缓存雪崩
最新推荐文章于 2018-11-04 12:22:11 发布