缓存雪崩
缓存雪崩,是指缓存内的数据同一时间大量失效,导致请求直接去查询数据库,造成数据库服务器 CPU 或内存负载较高,甚至宕机,影响其他业务。
解决方案
- 高可用
- 采用 Redis Cluster 集群。
- 缓存预热
- 在系统上线前,可以事先针对热点数据进行缓存,或者定时刷新热点数据的缓存。
缓存穿透
缓存穿透,指同一时间大量请求查询不存在的数据,因为 Reids 中没有该数据,所以请求转向了 Mysql 数据库,给数据库造成压力。
解决方案
如果数据库中没有该值,将返回的空值存入缓存,设置短效的过期时间,建议五分钟内。