1.缓存雪崩
含义:
缓存同时过期,导致大量请求同时访问数据库
解决方法:
1.加锁排队
2.为缓存添加1-5分钟的随机时间
2.缓存穿透
含义:
用户请求数据库不存在的数据,查询结果为空。因此,缓存也构建不起,如果大量
用户发送该类请求,会导致请求直接走向数据库
解决方法:
1.使用布隆过滤器,将所有不可能查询到的数据放在一个数据集中,判断请求是否查询带有改数据集中的数据
2.查询返回回空也进行缓存,不过缓存时间比较短
3.缓存预热
含义:
系统上线时,先把用户需要查询的数据放在缓存中,使数据库的查询走到缓存中
解决方法:
1.编写接口先查询一波数据库,将用户查询的数据尽量存放到缓存中