Redis缓存预热+缓存雪崩+缓存击穿+缓存穿透要点简析

1、缓存预热
1、定义缓存预热就是系统上线后,提前将相关的缓存数据直接加载到缓存系统。避免在用户请求的时候,先查询数据库,然后再将数据缓存的问题!用户直接查询事先被预热的缓存数据!2、解决方案1)直接写个缓存刷新页面,上线时手工操作下。2)数据量不大,可以在项目启动的时候自动进行加载。3)定时刷新缓存。  
2、缓存雪崩
发生原因redis主机挂了,redis全面崩溃,偏硬件运维redis中有大量key同时过期大面积失效,偏软件开发预防和解决redis中key设置为永不过期or过期时间错开redis缓存集群实现高可用 主从+哨兵 redis cluster 开启redis持久化机制aof/rdb,尽快恢复缓存集群多缓存结合预防雪崩 ehcache本地缓存+redis缓存服务降级 hystrix或者阿里sentinel限流&降级  
3、缓存击穿
3.1、是什么
请求去查询一条记录,先查redis无,后查mysql无,都查询不到该条记录但是请求每次都会打到数据库上面去,导致后台数据库压力暴增,这种现象称为缓存穿透,rendis变成了一个摆设简单来说,本来无一物,两库都没有即不在redis缓存库,也不在mysql,数据库存在被多次暴击风险  
3.2、解决
方案1:空对象缓存或者缺省值
第一种解决方案,回写增强如果发生了缓存穿透,我们可以针对要查询的数据,在redis里存一个和业务部门商量后确定的缺省值(比如,零、负数、defaultnull等)。比如,键uid:abcdxxx,值defaultnull作为案例的key和value先去redis查键uid:abcdxxx没有,再去mysql查没有获得 ,这就发生了一次穿透现象。but,可以增强回写机制mysql也查不到的话也让redis存入刚刚查不到的key并保护mysql。第一次来查询uid:abcdxxx,redis和mysql都没有,返回null给调用者,但是增强回写后第二次来查uid:abcdxxx,此时redis就有值了。可以直接从redis中读取default缺省值返回给业务应用程序,避免了把大量请求发送给mysql处理,打爆mysql。但是,此方法架不住黑客的恶意攻击,有缺陷......,只能解决key相同的情况黑客或恶意攻击黑客会对你的系统进行攻击,拿一个不存在的id去查询数据,会产生大量的请求到数据库去查询,可能会导致你的数据库由于压力过大而宕掉key相同打你系统 第一次打到mysql空对象缓存后第二次就返回default null缺省值 避免mysql被攻击,不用再到数据库中去走一圈了key不同打你系统 由于存在空对象缓存和缓存会写(看自己业务不限死) redis中的无关紧要的key也会越写越多(记得设置redis过期时间)  
方案2:google布隆过滤器guava解决缓存穿透
白名单架构
布隆过滤器说明
误判问题,但是概率小可以接受,不能从布隆过滤器删除全部合法的key都需要放入guava版布隆过滤器和redis里面,不然数据就是返回null  
4、缓存穿透
4.1、是什么
大量的请求同时查询一个key时,此时这个key正好失效了,导致大量的请求都打到数据库上面去简单说就是热点key突然失效了,暴打mysql  
4.1、危害
会造成某一时刻数据库请求量过大,压力剧增一般技术部门需要知道热点key时那些,防止击穿  
4.1、解决
热点key失效时间到了自然清除但还被访问到delete掉的key,刚巧又被访问方案1:差异失效时间,对于访问频繁的热点key,干脆就不设置过期时间方案2:互斥更新,采用双检加锁策略多个线程同时去查询数据库的这条数据,那么我们可以在第一个查询数据的请求上使用一个 互斥锁来锁住它。其他的线程走到这一步拿不到锁就等着,等第一个线程查询到了数据,然后做缓存。后面的线程进来发现已经有缓存了,就直接走缓存。  
5、总结
好了,今天的小知识你学会了吗?
链接:https://blog.51cto.com/u_13236892/8955597


薄膜表面检测设备的原理及功能
徕卡S3中画幅相机上市 国行售价145500元
5G与工业互联网融合走向商用阶段,实现工业数字化的转型升级
惠普畅游人笔记本怎么样?惠普 Pavilion 14深度评测:非常轻薄续航亮眼
纳芯微车规级芯片助力汽车向电动化和智能化的发展趋势前进
Redis缓存预热+缓存雪崩+缓存击穿+缓存穿透要点简析
最尴尬的双摄,688元红米Pro手机开箱
霍尔传感器在无刷直流电动机中的应用解析
什么是NETCONF
中国手机厂商在全球智能手机市场的影响力巨大,谷歌拉拢中国手机厂商
智能压力传感器技术应用和数据融合技术的研究
小米造车会不会影响苹果和特斯拉的生意?
使用红外摄像机存在什么利弊
四维图新旗下世纪高通正式推出警用电子沙盘系统
PCM编译码 实验
LoRa无线数传终端_LoRa DTU/RTU
VR售楼能否成为一种新流行
考拉海购推出手语识别系统,该系统仍处在测试阶段
iQOO 5在拼多多vivo旗舰店开售,七夕送礼物有着落了!
华为四无生态型摄像机助力东湖构建平安智慧社区