redis
82瓜
这个作者很懒,什么都没留下…
展开
-
redis(2)
设置缓存时许多资源采用了相同的过期时间,导致在某一时刻大量缓存失效,所有的请求转发到数据库,导致数据库瞬时压力过大所导致雪崩,他与缓存击穿的区别是,击穿是一个资源过期,同时多个请求对该资源进行访问;雪崩是在某一瞬间大量缓存过期。穿透无中生有key,布隆过滤null隔离。缓存击穿过期key,锁与非期解难题。雪崩缓存过期key,过期时间要随机。缓存穿透的原因是查询不存在的数据,解决的方法是采用布隆过滤器,或者将不存在的数据经数据库返回的空值存放在缓存中。原创 2024-01-09 22:17:55 · 345 阅读 · 0 评论 -
redis(1)
当客户端访问数据库一个不存在的数据时,数据库查询不到也不会添加在缓存中,所以客户端的每次访问都会去查数据库,这有可能会导致数据库垮掉。对于设置过期时间的key,在一段时间后过期,恰好在这个时间点对于该key有大量的请求访问,这些请求发现key过期后会从数据库加载并同步到缓存,但大量的请求会瞬间压垮数据库。原创 2024-01-09 21:51:11 · 636 阅读 · 0 评论