缓存穿透是指查询一个必定不存在的数据,因为缓存是不命中时被动写,而且处于容错考虑,若是从存储层查不到数据则不写入缓存,这将致使这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。后端
在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击咱们的应用,这就是漏洞。缓存
缓存雪崩是指设置缓存采用了相同的过时时间,致使缓存在某一时刻同时失效,请求所有转发到DB,DB瞬间压力太重雪崩。并发
对于一些设置了过时时间的key,若是这些key可能在某些时间点被超高并发地访问,是一种很是“热点”的数据。高并发
缓存在某个点过时的时候,刚好在这个时间点对这个key有大量的并发请求过来,这些请求发现缓存过时通常都会从后端加载数据并回设到缓存,这个时候大并发的请求可能瞬间把后端DB压垮。线程