缓存穿透是指查询一个一定不存在的数据,如果从存储层查不到数据,则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,可能导致数据库挂掉,我们一般用布隆过滤器来解决.
在这里扩展一个小知识:布隆过滤器
布隆过滤器主要是用于检索一个元素是否在一个集合中,它的底层 主要是先去初始化一个较大的数组,里面存放的二进制0或1,在一开始都是0,当一个key来了之后经过3次hash计算,模于数组的长度找到数据的下标,然后把数组中原来的0改为1,这样的话,三个数组的位置就能标明一个key的存在.
缓存穿透是指查询一个一定不存在的数据,如果从存储层查不到数据,则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,可能导致数据库挂掉,我们一般用布隆过滤器来解决.
在这里扩展一个小知识:布隆过滤器
布隆过滤器主要是用于检索一个元素是否在一个集合中,它的底层 主要是先去初始化一个较大的数组,里面存放的二进制0或1,在一开始都是0,当一个key来了之后经过3次hash计算,模于数组的长度找到数据的下标,然后把数组中原来的0改为1,这样的话,三个数组的位置就能标明一个key的存在.