前言
一、缓存穿透
当发送请求时通过key去缓存查询,如果不存在对应的value就应该去数据库查找。一些恶意的请求会故意查询不存在的key,而且需求量很大的时候就会对后端系统造成很大压力,数据库就很有可能会挂掉。
二、缓存击穿
意思是当缓存当中没有,但是数据库中存在的数据,如果有98次请求的话,就会查询98次数据库,出现了的是并发问题。原因是缓存中没有这个数据或者是这个数据刚刚到达过期时间失效。和缓存穿透类似。
三、缓存雪崩
指的是同一时刻大量数据失效或者丢失。比如redis中添加了100万的数据,在同一时刻40万数据同时失效,就说发生了缓存雪崩。