数据库学习记录

redis如何解决缓存雪崩,缓存穿透,缓存击穿

2020-02-19  本文已影响0人  迷糊银儿
缓存雪崩

  在某个时间段设置了过期时间的key都一起失效了,那么db肯定扛不住那么大的并发量,可能会崩溃;
  所以我们在设置一些热点key的时候,要尽量设置不同的过期时间,以避免在高并发的情况下缓存雪崩问题

缓存穿透

  从字面上理解就是因为每次做查询请求的时候无法从缓存中查询,从而直接将请请求落入DB,刚好db中也没这条数据,那么返回的就是null,就不会放入缓存中,周而复始直到db炸裂。
  这种方案简单粗暴的解决方式就是当db中查询为null的时候给缓存设置过期时间 的默认值,从而解决掉这种查询直接到达db的频率

缓存击穿

  某个热点key突然过期了,那么必然会导致,大量的请求入db那么db就会扛不住压力,凉凉。
  解决方案设置锁(避免大家同时访问该db),如果是分布式系统就设置分布式锁。

上一篇 下一篇

猜你喜欢

热点阅读