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

支付网站怎么做北京网站建设类岗位

支付网站怎么做,北京网站建设类岗位,自己怎样开网站,专业视频网站开发目录 介绍 mybatis缓存 一级缓存 1.是什么 2.特点 3.场景 mybatis 二级缓存 1.是什么 2.特点 3.配置步骤 注意 一级缓存问题 二级缓存问题 扩展 1.MyBatis集成 Redis 2.直接使用Redis redis 缓存 一、String 字符串 二、Llst 列表 三、Hash 哈希 四、Set…

目录

介绍 

mybatis缓存

一级缓存

1.是什么

2.特点

3.场景

mybatis 二级缓存

1.是什么

2.特点

3.配置步骤

注意

一级缓存问题

二级缓存问题

扩展

1.MyBatis集成 Redis

2.直接使用Redis

redis 缓存

一、String 字符串

二、Llst 列表

三、Hash 哈希

四、Set 集合

五、Sorted Set 有续集合

总结


介绍 

        mybatis 缓存  redis缓存 上下无强关联  根据需要读即可 持续更新

mybatis 很多相关还可阅读: 大道至简 少字全意 易经的方式看 Mybatis 事务实例 核心组件及运行 实力例 及Mybatis-Plus 适用于 懂而久未用回忆 ,不懂而需明正理而用-CSDN博客

mybatis缓存

一级缓存

1.是什么

        级缓存是 SqlSession 级别的缓存,可以理解为“会话临时笔记”。在同一个数据库会话(SdlSession)中,如果多次执行相同的查询,第二次开始会直接从缓存中取数据,不再访问数据库

2.特点

  • 默认开启,无需配置
  • 会话隔离:不同 SqlSession 的缓存互不影响.
  • 自动失效: 当执行增删改操作 (INSERT/UPDATE/DELETE)时,当前会话的一级缓存会被清空
     

3.场景

短时间内重复查询同一数据 (如用户多次刷新页面)但需注意数据实时性要求高的场景不适合。

mybatis 二级缓存

1.是什么

        二级缓存是 Mapper级别的缓存,可以理解为“公共备忘录”。多个 SqlSession 访问同一个 Mapper 的查询时,可以共享缓存结

2.特点

  • 默认关闭,需手动开启
  • 跨会话共享:不同 SalSession 的相同查询可复用缓存
  • 需序列化:实体类必须实现接口。Serializable
  • 可能脏读:如果其他会话修改了数据,缓存可能未及时更新
     

3.配置步骤

  • 配置文件设置:mybatis-plus.configuration.cache-enabled=true
  • Mapper 文件开启:在对应 XML 中添加<cache/>标签
  • 实体类实现序列化接口

注意

一级缓存问题

  • 频繁更新操作会导致缓存频繁失效,可能降低性能
  • 可通过 openSession.clearCache() 手动清空缓存

二级缓存问题

  • 分布式环境下容易产生脏数据,推荐用 Redis 等外部缓存替代(MyBatis-Plus 支持整合 Redis 作为二级缓存

扩展

1.MyBatis集成 Redis

  • 作为二级缓存: MyBatis默认提供基于内存的本地缓存(一级缓存为SqlSession级别,二级缓存为Mapper命名空间级别)。集成Redis后,将其作为二级缓存的存储介质,替代默认的HashMap实现  
  • 自动管理: 通过MyBatis的缓存接口(如 @Cacheable 、@cacheEvict)自动触发缓存的读写,无需手动操作Redis客户端,业务代码与缓存逻辑解。

2.直接使用Redis

  • 独立缓存层: Redis作为独立于ORM框架的分布式缓存,需在业务代码中显式调用Redis API (如set、gt、incr) 管理数据。
  • 灵活性高:可自定义缓存策略(如过期时间、数据结构选择),适用于非数据库查询场景(如计数器、分布式锁) 

redis 缓存

一、String 字符串

底层结构:  动态字符串 (SDS) 或整型 (int)

特点:  最大存储 512MB,支持二进制安全 (可存储图片、序列化对象等)

应用场景:

  1. 缓存加速:  高频访问数据 (如用户信息) 缓存,降低数据库压力
  2.  计数器: 实时统计 (如阅读量、点赞数) ,通过 INCR /DECR 指令实现原子操作
  3. 分布式锁:利用SETNX 指令实现互斥资源控制
  4. 短时数据存储:短信验证码、临时令牌等设置过期时间自动清理
     

二、Llst 列表

底层结构:双向链表或压缩列表 (ziplist)

特点:元素有序可重复,支持两端插入/弹出。

应用场景:

  1. 消息队列:生产者通过 LPUSH 插入数据,消费者通过BRPOP阻塞获取 (类似先进先出队列)
  2. 时间线: 存储最新动态 (如微博 Feed 流) ,通过 LRANGE 分页查询
  3. 栈结构: 结合 LPUSH + LPOP 实现后进先出操作
     

三、Hash 哈希

底层结构: 压缩列表 (ziplist) 或哈希表 (hashtable)

点:键值对集合,适合存储对象属性

应用场景:

  1.  对象存储: 用户信息 (如 user:id{name,age)) ,支持字段级读写,减少网络传输
  2.  购物车: 以用户 ID为 Key,商品 ID 和数量为 Field-Value,便于增删改查
  3.  配置管理:存储多维度配置参数,如系统开关状态
     

四、Set 集合

底层结构:整数集合 (intset) 或哈希表 (hashtable)

特点:元素无序且唯一,支持集合运算 (交集、并集、差集)

应用场景:

  1. 标签系统:用户兴趣标签 (如“体育”“科技”) ,快速查找共同兴趣群体
  2. 去重统计:独立 IP 计数、抽奖活动防止重复参与
  3. 社交关系:存储用户好友列表,计算共同好友 (SINTER)

案例如存如:

  •  u1(1,2,3)
  •  u2(1,9,3)
  •  u3(1,3,5,8)
  • 三个交集 1,3

五、Sorted Set 有续集合

底层结构:跳表 (skiplist) 和哈希表组合

特点:元素按分数 (score)排序,唯一且支持范围查询.
应用场景:

  1.  排行榜: 实时更新游戏积分、视频播放量排名(ZREVRANGE 获取 Top N)
  2.  延迟队列:任务按执行时间排序,通过ZRANGEBYSCORE获取到期任务
  3.  地理围栏:结合 GEO 模块计算附近的人或地点
     

总结

  • 高频简单读写:优先使用 String 或 Hash。
  • 顺序敏感操作:选择 List 或 Sorted Set。
  • 去重与集合运算:采用 Set。
     

***************持续更新 易经的方式看技术*************************

***************持续更新 易经的方式看技术*************************

***************持续更新 易经的方式看技术*************************

http://www.yayakq.cn/news/833522/

相关文章:

  • 做淘口令的网站中国纪检监察报范耀庚
  • 网站建设课程设计报告范文模版网站如何优化
  • 网站优化关键词是怎么做的延吉市住房城乡建设局官方网站
  • 微信网站开发用什么语言个人建设网站如何定位
  • 多国语言网站建设规模以上工业企业名单
  • 网站蓝色自己怎么做网站空间
  • 百度收录正常网站流量下降河北省招标投标网官网
  • 找人做网站需要什么软件wordpress 用户组
  • 萍乡土建设计网站模板网传奇手游
  • 网站建站如何入手养老网站建设合同
  • 企业网站开发需求分析模板海东市网站建设
  • 生产备案号怎么查询网站wordpress阿里云推送
  • 网站用什么软件做类似游侠客网站建设
  • pc站转换手机网站优质的广州微网站建设
  • 如何通过网站做网上报名系统排名优化培训
  • 平面设计的网站西安是哪个省市
  • 室内效果图代做网站wordpress 获取当前文章标题
  • 上海市人才网官网桂平seo关键词优化
  • 网站制作规划设计内容建站服务器多少钱
  • 网站怎么做域名实名认证吗wordpress如何做站群
  • 新开传奇网站发布网站白酒类网站模板
  • 广州建设h5网站360网站空间
  • 怎么注册一个网站昆明网站建设平台
  • 顺的网站建设策划中国纪检监察报数字报
  • 做项目网站要不要备案卡姿兰网站建设策划书
  • 免费微网站模板做设计的去哪些大厂
  • 网站做app安全吗做个小网站 虚拟空间 买服务器
  • 什么浏览器适合看网站wordpress主页大小
  • 石家庄网站建设seo建筑人才网站哪个比较好
  • 温州建设集团网站首页天天想你视频免费观看西瓜