Redis第四篇——缓存

这一篇和Redis本身关系不大,而是我们在日常将Redis作为缓存使用时会遇到的几个问题
缓存穿透 关键点:访问一个不存在的key。 当请求一个不存在的key时,缓存就没用了,这样每次请求都直接打到我们后台的DB
解决办法:
(1)对不存在的key进行缓存
(2)使用布隆过滤器
布隆过滤器的特点:可保证返回不存在的元素一定不存在,返回存在的元素大概率存下,因此是存在一定的误判率的
缓存击穿 关键点:对于设置了过期时间的缓存数据,当该数据过期时,此时有大量对该数据的请求,就会导致这波突然的流量全打到数据库
解决办法:
(1)加锁请求
缓存雪崩 【Redis第四篇——缓存】关键点:大量的key在同一时间过期,也会导致流量全打到数据库
解决办法:
(1)为不同的key设置不同的过期时间,在设置过期时间时增加一个随机值
缓存一致性 当做缓存时,缓存数据与数据库数据的一致性问题

    推荐阅读