缓存雪崩
缓存雪崩指缓存服务器重启或者大量缓存集中在某一个时间段内失效,给后端数据库造成瞬时的负载升高的压力,甚至压垮数据库的情况。
缓存雪崩造成原因:
1.redis故障
2.Redis中大量key的ttl过期
解决redis故障方法
如下图 建立Redis集群,构建主从节点,保证用户能访问到Redis
通过建立EHCache缓存或者限制用户访问流量(hystrix)解决用户访问
Redis中大量key的ttl过期
通常的解决办法是对不同的数据使用不同的失效时间,甚至对相同的数据、不同的请求使用不同的失效时间,例如,我们要缓存user数据,会对每个用户的数据设置不同的缓存过期时间,可以定义一个基础时间,假设10秒,然后加上一个两秒以内的随机数,过期时间为10~12秒,就会避免缓存雪崩。