什么是缓存穿透,如何防止

 时间:2024-10-20 07:11:50

1、缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时需要从数据库查询

什么是缓存穿透,如何防止

2、查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,造成缓存穿透。

什么是缓存穿透,如何防止

3、解决办法:布隆过滤 ,对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则丢弃。

什么是缓存穿透,如何防止

4、还有最常见的则是采用布隆过滤器,将所有可能存在的数据哈希到一个足够大的bitmap中

什么是缓存穿透,如何防止

5、一个一定不存在的数据会被这个bitmap拦截掉,从而避免了对底层存储系统的查询压力。

什么是缓存穿透,如何防止

6、缓存空对象 ,也可以采用一个更为简单粗暴的方法,如果一个查询返回的数据为空(不管是数据不存在,还是系统故障)

什么是缓存穿透,如何防止

7、我们仍然把这个空结果进行缓存,但它的过期时间会很短,最长不超过五分钟。

什么是缓存穿透,如何防止
  • 说唱脸谱舞蹈完整版教学视频
  • 合成橡胶如何分类
  • Unity如何设置网格碰撞器
  • 街头涂鸦toy教学
  • 苹果汁的功效
  • 热门搜索
    山东旅游景点介绍 梦想旅游 宁波旅游图 西双版纳旅游多少钱 溱潼古镇旅游攻略 西安旅游景点图片 中国最佳旅游胜地 云南省旅游学校 去厦门旅游要带什么 旅游医疗保险