[发明专利]用于多实例数据库负载的数据库连接池平衡方法及系统有效
申请号: | 202010401591.9 | 申请日: | 2020-05-13 |
公开(公告)号: | CN111562987B | 公开(公告)日: | 2023-03-21 |
发明(设计)人: | 官元峰 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F16/27 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 李昆蔚 |
地址: | 100089 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 实例 数据库 负载 数据库连接 平衡 方法 系统 | ||
本发明公开了一种用于多实例数据库负载的数据库连接池平衡方法及系统,涉及数据库领域。该方法包括:在配置bean初始化的过程中读取连接池的配置文件,配置文件中包含连接池的配置属性和配置值;将配置属性中jdbc.urlVars配置项的配置值以预设排列方法拆分成字符串组;使用配置属性中jdbc.urlTemplate配置项的内容作为模板,把模板中的Vars变量替换成字符串组;根据与数据库连接的连接池数量,从模板的字符串组中按照预设读取规则读取元素,根据元素为每个连接池分配数据库实例地址,与对应的数据库建立连接。本发明适用于多实例数据库负载的数据库连接池平衡,提高硬件资源的有效利用,同时兼顾了fail‑over策略,保持了原有的高可用。
技术领域
本发明涉及数据库领域,尤其涉及一种用于多实例数据库负载的数据库连接池平衡方法及系统。
背景技术
目前,软件在使用数据库时,通常是使用数据库连接池方式访问数据库。这种访问方式在一个连接池中只使用一个连接配置,因此同一连接池就只能连接到其中一个数据库实例,并通过不同应用或进程的不同配置,实现对多个数据库实例的连接,在此种环境下,当多个数据库实例的负载较高的情况下,就要求平衡各实例的负载。
目前的负载平衡方式,通常是通过对各实例的运行负载监控数据采集的方式来逐步修正配置部署,这种方式占用系统资源较多,并且比较耗时,不容易取得较优化的调整结果。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种用于多实例数据库负载的数据库连接池平衡方法及系统。
本发明解决上述技术问题的技术方案如下:
一种用于多实例数据库负载的数据库连接池平衡方法,包括:
在配置bean初始化的过程中读取连接池的配置文件,所述配置文件中包含连接池的配置属性和配置值;
将所述配置属性中jdbc.urlVars配置项的配置值以预设排列方法拆分成字符串组;
使用所述配置属性中jdbc.urlTemplate配置项的内容作为模板,把所述模板中的var变量替换成所述字符串组;
根据与数据库连接的连接池数量,从所述模板的字符串组中按照预设读取规则读取元素,根据所述元素为每个连接池分配数据库实例地址,与对应的数据库建立连接。
本发明的有益效果是:本发明提供的平衡方法,适用于多实例数据库负载的数据库连接池平衡,通过对连接池的配置文件进行改进,对数据库实例地址进行排列,然后按照一定的读取规则读取数据库实例的地址进行分配,从而实现了各实例间均衡应用连接数量,在一定程度上增加各实例的负载均衡程度,避免个别实例负载过高,从而提高硬件资源的有效利用,同时兼顾了fail-over策略,保持了原有的高可用。此外,本发明作为软件系统的数据库连接池组件的扩展组件,在连接池的基础上,只影响连接池新建连接的过程,对其它特性不产生影响,具有很强的实用性。
本发明解决上述技术问题的另一种技术方案如下:
一种用于多实例数据库负载的数据库连接池平衡系统,包括:
读取单元,用于在配置bean初始化的过程中读取连接池的配置文件,所述配置文件中包含连接池的配置属性和配置值;
排列单元,用于将所述配置属性中jdbc.urlVars配置项的配置值以预设排列方法拆分成字符串组;
替换单元,用于使用所述配置属性中jdbc.urlTemplate配置项的内容作为模板,把所述模板中的var变量替换成所述字符串组;
平衡单元,用于根据与数据库连接的连接池数量,从所述模板的字符串组中按照预设读取规则读取元素,根据所述元素为每个连接池分配数据库实例地址,与对应的数据库建立连接。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010401591.9/2.html,转载请声明来源钻瓜专利网。