缓存相关概念

缓存穿透

问题描述

  描述:查询不存在的key,绕过缓存,给DB施压,如下图所示:
这里写图片描述

方案1:过滤器

  如下图所示,通过增加过滤器对待查询的key进行过滤,过滤器的形式可以有多种,如白名单,符合某种规则等等。
这里写图片描述

方案2:缓存空值

  当key对应的值不存在,用特殊的空值表示,加入缓存(时间不能过长,防止影响正常值);

缓存雪崩

问题描述

描述:某一时刻,大部分缓存同时失效,导致大量的请求直接查询数据库,造成DB压力过大或者宕机;

解决方案

  1. 根据业务特点,对key分组,尽量使得失效时间均匀分布;
  2. 增加多级缓存;

缓存击穿

问题描述

描述:“热点缓存”失效,导致大量请求访问数据库,造成load过高或宕机;

解决方案

缓存预热

问题描述

  描述:在真实流量到达前,提前将数据加载到缓存中;

解决方案

  Mock线上流量;

猜你喜欢

转载自blog.csdn.net/yangguosb/article/details/80212972