Redis缓存穿透、缓存击穿、缓存雪崩
2020-06-08 本文已影响0人
养一只tom猫
缓存穿透:缓存穿透是为数据库与缓存都没有该条数据。
解决方法:
缓存空对象(代码简单):数据库查询为空或者不为空都存入缓存。
缓存击穿:缓存击穿是指一个key访问量特别大,当该缓存失效时,访问就直接打到数据库,对数据库造成压力。
解决方法:
对于热点数据可不设置过期时间(看业务)。
加锁,如果从缓存中获取该数据为空,则加锁。
缓存雪崩:雪崩指大量缓存集体失效或redis宕机,周期性给数据库造成压力。
解决方法:
错开过期时间。
redis搭集群