缓存穿透:向缓存和数据库不存在的数据不断请求,导致数据库压力过大。

解决方案:

1、接口层增加校验,对传参进行校验,比如id是从1开始的,那么id<=0的直接拦截;

2、缓存中取不到的数据,在数据库中也没有取到,这时可以将key-value对写为key-null,这样可以防止攻击用户反复用同一个id暴力攻击;


缓存击穿:热门的数据,突然失效,大量请求到服务器数据库中。

解决方案:

1、设置热点数据永不过期;


三、缓存雪崩:大量数据同一时间失效。

解决方案:

1、缓存数据的过期时间设置随机,防止同一时间大量数据过期现象发生;