说明:收录全网最新的团体标准 提供单次或批量下载
文库搜索
切换导航
文件分类
频道
文件分类
批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 20221097683 5.5 (22)申请日 2022.08.15 (71)申请人 全通金信控股 (广东) 有限公司 地址 528405 广东省中山市东区中山四路 88号尚峰金融商务中心五座 19层之八 (住所申报) (72)发明人 李宝君 何玉华 (51)Int.Cl. G06F 9/48(2006.01) G06F 9/50(2006.01) G06F 16/245(2019.01) G06F 16/27(2019.01) (54)发明名称 一种一主 多从的数据源调度、 管理装置 (57)摘要 本发明涉及互联网访问数据调度的技术领 域, 具体公开了一种一主多从的数据源调度、 管 理装置, 包括代理数据源、 DAO层切面拦截器和数 据源上下文, 包括以下步骤: S1、 获取数据源标 识; S2、 DAO层切面拦截器获取DAO层接口上的标 签的“数据源标识 ”, 将“数据源标识 ”记录到数据 源上下文; S3、 代理数据源由数据源上下文中获 取“数据源标识 ”; S4、 数据源上下文返回给代理 数据源“数据源标识”; S5、 代理数据源 根据“数据 源标识”选择数据源并调用数据库; S6、 数据库 将 调用数据源反馈到代理数据源、 DAO层以及DAO层 切面拦截器; S7、 查看 是否有挂起的sp ring事务; 该数据源调度、 管理装置不会因为等待可用连接 而耗尽系统的可用线程, 从而造成整个应用堵 死。 权利要求书2页 说明书6页 附图3页 CN 115309528 A 2022.11.08 CN 115309528 A 1.一种一主多从的数据源调度、 管理装置, 包括代理数据源、 DAO层切面拦截器和数据 源上下文, 其特 征在于, 包括以下步骤: S1、 获取数据源标识, 查看是否有spri ng事务, 有则挂 起该事务; S2、 DAO层切面拦截器获取DAO层接 口上的标签 的“数据源标识 ”, 将“数据源标识 ”记录 到数据源上 下文, 并调用DAO层和调用代理数据源; S3、 代理数据源由数据源上下文中获取 “数据源标识 ”, 所述代理数据源包括数据源调 度器、 主数据源和从数据源key ‑value容器, 所述数据源调度器用于从数据源 上下文中取出 “数据源标识 ”, 所述主数据源为直接使用的数据源, 所述 从数据源key ‑value容器内储存有 代理从数据源; S4、 数据源上 下文返回给代理数据源 “数据源标识 ”; S5、 代理数据源根据 “数据源标识 ”选择数据源并调用数据库; S6、 数据库将调用数据源反馈 到代理数据源、 DAO层以及DAO层切面 拦截器; S7、 查看是否有挂起的spring事务, 有则 恢复该事务, 将数据源标识由数据源上下文中 移除, 然后返回结果给service层。 2.根据权利要求1所述的一种一主多从的数据源调度、 管理装置, 其特征在于, 所述DAO 层切面拦截器的处理方法包括: 所述DAO层切面拦截器从DAO层接口中, 尝试获取 “数据源标 识”, 若获取不到, 则直接调用DAO层接口; 若获取得到, DAO层切面拦截器会调起数据源 前置 处理器, 该处理器会先将 “数据源标识 ”记录到数据源上下文中, 然后查看是否有spring事 务, 有则挂起该事务, 然后调用DAO层, DAO层返回调用结果后, 查看是否有挂起的spring事 务, 有则恢复该事务。 3.根据权利要求2所述的一种一主多从的数据源调度、 管理装置, 其特征在于, 所述DAO 层切面拦截器的配置如下: <aop:config> <aop:aspect ref="microServiceDao Interceptor "> <aop:pointcut expression="execution(* cn.qtone.zf.*.*.dao..* Mapper.*(..))" id="daoInterceptor "/> <aop:around method="around" pointcut‑ref="dao Interceptor "/> </aop:aspect> </aop:config> 其中,“* cn.qtone.zf.*.*.dao. .*Mapper.*(..) ”为需要拦截的接口。 4.根据权利要求3所述的一种一主多从的数据源调度、 管理装置, 其特征在于, 所述DAO 层切面拦截器的处 理方法还 包括以下步骤: 当在service层开启spring所管理的事务时, spring事务管理器提前由数据源中获取 链接, 当在service层的某一带事务方法中, 顺序调用接口 functoinA、 functoinB、 functoinC时, 则在代理数据源表现为获取主数据源链接master, 然后执行functoinA的 sql, 然后保存链接master, 获取代理从数据源链接slave, 用链接slave执行functoinB的 sql, 然后释放链接slave, 用链接master执 行functo inC的sql, 释放链接master。 5.根据权利要求1所述的一种一主多从的数据源调度、 管理装置, 其特征在于, 所述代 理数据源 包括以下切换配置方法:权 利 要 求 书 1/2 页 2 CN 115309528 A 2A、 根据name、 type、 isProtected、 co nfig切换代理从数据源配置; B、 根据name查看从数据源key ‑value容器中是否有对应的代理从数据源, 若否, 则将任 务抛异常并结束, 若是, 则进入下一 步; C、 新建一个代理从数据源然后将type、 isProtected、 config传并启动; 若不能启动, 则 将任务抛异常并结束, 若正常启动, 则进入下一 步; D、 将name对应的原数据源取 出并保存, 将新数据源放入; E、 查看原数据链接是否有活跃连接, 若无, 则关闭原数据源并结束, 若有, 则循环查看 原数据链接是否有活跃 连接, 直至没有活跃 连接后关闭原数据源并结束。 6.根据权利要求1所述的一种一主多从的数据源调度、 管理装置, 其特征在于, 所述数 据源上下文内设置有一jdk提供的ThreadLocal对象, 该ThreadLocal对象可以将变量保存 在当前执行的线程当中。 7.根据权利要求6所述的一种一主多从的数据源调度、 管理装置, 其特征在于, 所述数 据源上下文包括以下提供 方法: a、 将数据源标识 记录到ThreadL ocal对象中: public static void setSlaveDataSource(St ring slaveDataSource) {..}; b、 将从ThreadL ocal对象获取 数据源标识: public static String getSlaveDataSource() {..}; c、 将数据源标识从ThreadL ocal对象移除: public static String removeSlaveDataSource() {..}。权 利 要 求 书 2/2 页 3 CN 115309528 A 3
专利 一种一主多从的数据源调度、管理装置
文档预览
中文文档
12 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
赞助1.5元下载(无需注册)
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
下载文档到电脑,方便使用
赞助1.5元下载
本文档由 人生无常 于
2024-03-18 13:07:16
上传分享
举报
下载
原文档
(561.3 KB)
分享
友情链接
ISO 4388-1991Cigarettes. Determination of the smoke condensate retention index of a filter. Direct s.pdf
ISO 1496-1 2013 Series 1 freight containers — Specification and testing — Part 1 General cargo containers for general purposes.pdf
ISO TS 23258 2021 Blockchain and distributed ledger technologies — Taxonomy and Ontology.pdf
ISO 27306 2016 Metallic materials Method of constraint loss correction of CTOD fracture toughness for fracture assessment of steel components.pdf
ISO 12642-3 2021 Graphic technology Input data for characterization of 4-colour process printing Part 3 Extended data set including near neutral scale.pdf
ISO 22818 2021 Textiles — Determination of short-chain chlorinated paraffins (SCCP) and middle-chain chlorinated paraffins (MCCP) in textile products out of different matrices by use of gas.pdf
ISO 14375 2018 Child-resistant non-reclosable packaging for pharmaceutical products Requirements and testing.pdf
ISO ASTM 52909 2024 Additive manufacturing of metals — Finished part properties —.pdf
ISO 21219-10 2023 Intelligent transport systems — Traffic and travel information (TTI) via transport protocol experts group, generation 2 (TPEG2) — Part 10 Conditional access information (TPEG2-CAI).pdf
ISO-ASTM 52904 2024 Additive manufacturing of metals Process characteristics and performance Metal powder bed fusion process to meet critical applications.pdf
GB-T 25854-2010 一般起重用D形和弓形锻造卸扣.pdf
GB-T 6324.2-2004 有机化工产品试验方法 第2部分 挥发性有机液体水浴上蒸发后干残渣的测定.pdf
GB-T 21868.2-2008 颜料和体质颜料 评定分散性用的分散方法 第2部分 用振荡磨分散.pdf
GB-T 24127-2009 塑料抗藻性能试验方法.pdf
GB-T 18251-2019 聚烯烃管材、管件和混配料中颜料或炭黑分散度的测定.pdf
GB-T 10296-2008 绝热层稳态传热性质的测定 圆管法.pdf
GB-T 2900.88-2011 电工术语 超声学.pdf
GB-T 18909-2002 按能力批准评定质量的电子设备用高频电感器和中频变压器分规范.pdf
GB-T 26801-2011 封闭管道中流体流量的测量 一次装置和二次装置之间压力信号传送的连接法.pdf
GB-T 35080-2018 机械安全 B类标准和C类标准与GB-T 15706的关系.pdf
1
/
3
12
评价文档
赞助1.5元 点击下载(561.3 KB)
回到顶部
×
微信扫码支付
1.5
元 自动下载
官方客服微信:siduwenku
支付 完成后 如未跳转 点击这里 下载
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们
微信(点击查看客服)
,我们将及时删除相关资源。