一、缓存穿透
1.何为缓存穿透?
缓存穿透 , 是指查询一个数据库一定不存在的数据 。正常的使用缓存流程大致是 , 数据查询先进行缓存查询 , 如果key不存在或者key已经过期 , 再对数据库进行查询 , 并把查询到的对象 , 放进缓存 。如果数据库查询对象为空 , 则不放进缓存 。
2.缓存穿透解决方案
1)布隆过滤器拦截不存在的请求
2)redis缓存不存在的值
3)按照业务需要 , 设定规则直接进行拦截 , 比如用户id , 要求id>0
二、缓存击穿
1.何为缓存击穿?
缓存击穿 , 是指一个key非常热点 , 在不停的扛着大并发 , 大并发集中对这一个点进行访问 , 当这个key在失效的瞬间 , 持续的大并发就穿破缓存 , 直接请求数据库 , 就像在一个屏障上凿开了一个洞 。
2.缓存击穿解决方案
1)设置数据永远不过期
2)加分布式锁 , 单线程查询数据库
三、缓存雪崩
1.何为缓存雪崩?
缓存雪崩 , 是指在某一个时间段 , 缓存集中过期失效 。
2.缓存雪崩解决方案
1)缓存数据的过期时间设置为随机值
2)数据设置永不过期
【redis之缓存穿透、缓存击穿和缓存雪崩】
推荐阅读
- VLAN工作原理之ACCESS:接收到带VLAN的报文如何处理
- 深度原理学习–Redis集群
- 韩信为什么受胯之辱 韩信能忍胯下
- Wanderlust + Co 经典设计之最,带你横跨浩瀚宇宙
- 祁红工夫内质香气浓郁高长 滋味醇厚红茶之首
- 白毫乌龙膨风茶东方美人茶之称
- 凤凰单丛有形美 色翠 香郁 味甘之称
- 四大名丛之闽北水仙香气清高幽长 味甘醇鲜爽
- 四大名丛之铁罗汉武夷岩茶之上品
- 四大名丛之首大红袍茶叶介绍