当前位置: 首页 > java >正文

redis 缓存穿透,缓存击穿,缓存雪崩

一:什么是缓存

        

        (1)计算机:cpu、内存、磁盘,cpu任何需要的数据都要从内容中读入数据放入cpu,从cup内部添加一个缓存

        (2)web开发的每个阶段都可以添加缓存

                        

        (3)缓存优缺点(中小型企业数据量不大时没必要使用缓存)

                        

二:添加缓存

                缓存作用模型(先从redis查询数据,有则返回客户端,无则从redis查询,查询成功后将数据写入缓存,后返回)

                

        2.1 实例-根据id查询商铺缓存

                (1)业务逻辑

                                

                 (2)代码实现

                                

        2.2 缓存更新

                解决了修改redis后缓存并不知道还保留旧数据问题

                        

              (1)业务场景

                                

                (2)操作和修改数据库时需要考虑的问题

                                

三:缓存穿透

        3.1 基本概述

                (1)定义

                                

                (2)解决方案

                        缓存空对象

                                

                       布隆过滤器

                                

                (3)解决方案

                                

        3.2 代码实现

                商户查询缓存添加

                (1)业务逻辑

                                

                (2)代码实现

                                

                                

                                

四:缓存雪崩

        (1)定义

                        

        (2)产生原因               

                                 

        (3)解决方案

                        

五:缓存击穿

        (1)定义

                        

        (2)解决方案

                互斥锁

                        同一时刻只有一个线程在作业其它都在等待,导致性能差劲

                                

                逻辑过期

                        不设置TTL

                                

        (3)两方案比较

                                

http://www.xdnf.cn/news/6142.html

相关文章:

  • VCS X-PROP建模以及在方针中的应用
  • 利用vba替换word中多个表格,相邻单元格的文字
  • 用Array.from实现创建一个1-100的数组
  • 探索自我重复的奇妙之旅--递归
  • 最小区域法求平面度及八种算法思路
  • AI降重率工具推荐:提升论文原创度的利器
  • windows文件共享另一台电脑资源管理器网络文件夹无法找到机器
  • AI Agent开发第66课-彻底消除RAG知识库幻觉-带推理的RAG
  • 设计模式(9)——创建型模式之工厂方法
  • FlashInfer - SparseAttention(稀疏注意力)只计算部分有意义的注意力连接,而非全部 token 对
  • x-IMU matlab zupt惯性室内定位算法
  • 微服务调试问题总结
  • 数据预处理之数据平滑处理详解
  • 学习黑客蓝牙技术详解
  • 在K8S集群中部署EFK日志收集
  • 【LINUX操作系统】线程同步与互斥
  • 《Python星球日记》 第72天:问答系统与信息检索
  • VCS758电流传感器芯片:国产化替代与高精度电流检测解决方案
  • Elasticsearch索引设计与调优
  • 数字IC后端设计实现 | 如何自动删除Innovus 中冗余的hold buffer?
  • 季报中的FPGA行业:U型反转,春江水暖
  • 高压差分探头的阻抗选择
  • Apollo学习——键盘控制速度
  • mapreduce
  • AI大模型从0到1记录学习 linux day23
  • 深入理解SpringBoot中的SpringCache缓存技术
  • deepseek梳理java高级开发工程师微服务面试题-进阶版
  • 嵌入式中深入理解C语言中的指针:类型、区别及应用
  • 【​​HTTPS基础概念与原理​】对称加密与非对称加密在HTTPS中的协作
  • cadence Allegro PCB测量时 同时显示两种单位(mil mm)的设置方法