CN105591790B - 数据通信连接池管理装置 - Google Patents
数据通信连接池管理装置 Download PDFInfo
- Publication number
- CN105591790B CN105591790B CN201410838050.7A CN201410838050A CN105591790B CN 105591790 B CN105591790 B CN 105591790B CN 201410838050 A CN201410838050 A CN 201410838050A CN 105591790 B CN105591790 B CN 105591790B
- Authority
- CN
- China
- Prior art keywords
- connection pool
- node
- connection
- target
- pool
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本发明提出了一种数据通信连接池自动管理装置,所述装置包括:外部调用单元,其接收外部对象通过其提供的调用接口而发送的连接池调用命令,并随之按照预定分配策略为该外部对象分配目标连接池中的一条空闲连接,以供该外部对象在所述连接上完成后续的数据通信过程,以及在所述数据通信过程完成后释放所述连接;连接池大小管理单元,其根据所述目标连接池的历史统计数据周期性地调节所述目标连接池的大小;节点管理单元,其周期性地监测构成所述目标连接池的各个节点的运行状态,并且基于监测结果调节所述目标连接池的节点的数量。本发明所公开的装置能够针对实际需求情况自动调节连接池的大小以及组成连接池的节点的数量。
Description
技术领域
本发明涉及数据通信连接池管理装置,更具体地,涉及数据通信连接池自动管理装置。
背景技术
目前,随着计算机和网络应用的日益广泛以及不同领域的业务种类的日益丰富,客户端和服务器之间进行可靠和有效的数据通信变得越来越重要。
在现有的技术方案中,在客户端与服务器进行半双工同步通信的情况下,通常采用连接池的方式实现数据通信的并发处理,该连接池为每一个在客户端和服务器之间进行通信的服务提供一条由其独占的空闲连接,直至与本次调用相关的所有数据通信过程结束。
然而,现有的技术方案存在如下问题:当针对实际需求情况需要调节连接池的大小以及组成连接池的物理和/或虚拟节点的数量时,通常仅能通过人工监测、判断以及配置而完成,故效率较低且无法保证系统的可靠性和时效性,从而会显著地降低系统的整体性能。
因此,存在如下需求:提供能够针对实际需求情况自动调节连接池的大小以及组成连接池的物理和/或虚拟节点的数量的数据通信连接池自动管理装置。
发明内容
为了解决上述现有技术方案所存在的问题,本发明提出了能够针对实际需求情况自动调节连接池的大小以及组成连接池的物理和/或虚拟节点的数量的数据通信连接池自动管理装置。
本发明的目的是通过以下技术方案实现的:
一种数据通信连接池自动管理装置,所述数据通信连接池自动管理装置包括:
外部调用单元,所述外部调用单元接收外部对象通过其提供的调用接口而发送的连接池调用命令,并随之按照预定分配策略为该外部对象分配目标连接池中的一条空闲连接,以供该外部对象在所述连接上完成后续的数据通信过程,以及在所述数据通信过程完成后释放所述连接;
连接池大小管理单元,所述连接池大小管理单元根据所述目标连接池的历史统计数据周期性地调节所述目标连接池的大小;
节点管理单元,所述节点管理单元周期性地监测构成所述目标连接池的各个节点的运行状态,并且基于监测结果调节所述目标连接池的节点的数量。
在上面所公开的方案中,优选地,所述预定分配策略包括负载均衡策略,所述负载均衡策略在需要为外部对象分配空闲连接时以如下方式确定用于分配的空闲连接:(1)计算所述目标连接池中的所有节点的当前负载率,并选择当前负载率最小的节点作为目标节点;(2)确定所述目标节点是否还具有负载余量,并且如果其具有负载余量,则将所述连接池调用命令路由到所述目标节点,并随之由所述目标节点为该外部对象分配目标连接池中的一条空闲连接,如果其不具有负载余量,则向所述外部对象返回“无可用连接”的响应并终止空闲连接分配过程。
在上面所公开的方案中,优选地,所述连接池大小管理单元以如下方式调节所述目标连接池的大小:(1)在每个自然运行周期内通过周期性的采样获取对应于多个采样周期的活动连接数统计值,其中每个采样周期的活动连接数统计值是该采样周期内所有采样值的平均值;(2)在两个相邻的自然运行周期的切换期内,将前一个自然运行周期的每个采样周期时间值及其对应的活动连接数统计值作为二维坐标系中的横坐标和纵坐标值而构成二维坐标系中的多个点,并对所述多个点进行曲线拟合以获得拟合曲线函数,并将该拟合曲线函数在所述二维坐标系中沿纵坐标向上平移Cr值以得到扩缩参考曲线,所述Cr值为连接数余量储备参数;(3)以预先设定的连接池扩缩步长S对所述扩缩参考曲线按纵坐标采样以获得一组采样点(T1, C1)、(T2, C2)…(Tn, Cn),其按时间值T从小到大排列,n为采样点个数,其为大于1的正整数;(4)在后一个自然运行周期内,根据n个离散的时间点T1到Tn设置定时器,以致每当到达所述后一个自然运行周期内的对应的一个时间点Ti时就比较Ci、Ci-1、当前连接池大小Cc、以及当前活动连接数Ca之间的大小关系,并且如果Ci > Ci-1且Ci > Cc则将所述目标连接池的大小扩展到Ci,如果Ci > Ci-1且Ci <= Cc则不做连接池扩缩操作,而如果Ci < Ci-1则将所述目标连接池的大小缩减到Ci与Ca的最大值,并且如果Ci = Ci-1则不做连接池扩缩操作。
在上面所公开的方案中,优选地,当为外部对象分配空闲连接时如果活动连接数将要大于所述目标连接池的当前可用连接的数量时,则只要所述目标连接池的当前可用连接的数量小于所述目标连接池的最大支持连接数,所述连接池大小管理单元2就自动地对所述目标连接池进行一次步长为1的扩展。
在上面所公开的方案中,优选地,所述节点管理单元以如下方式监测构成所述目标连接池的各个节点的运行状态:周期性地监测各个节点的调用超时率是否超过预定的调用超时率阈值,并且以轮循的方式周期性的监测各个节点对保活请求的应答。
在上面所公开的方案中,优选地,所述节点管理单元以如下方式基于监测结果调节所述目标连接池的节点的数量:(1)如果某个节点的调用超时率超过预定的调用超时率阈值,则确定该节点已失效,并随之移除该节点;(2)如果未收到某个节点对保活请求的应答的次数超过预定的阈值,则确定该节点已失效,并随之移除该节点;(3)将失效的节点移入观察队列,并且周期性地向所述观察队列中的节点发送探测消息以确定该节点的故障是否已排除,如果接收到某个节点的成功应答的次数超过预定的阈值,则确定该节点的故障已排除,并重新将该节点加入所述目标连接池的可用节点集群中;(4)周期性地监测所述目标连接池的平均调用时间,如果平均调用时间超过预定的第一平均调用时间阈值,则自动地扩大所述目标连接池的节点数量,如果平均调用时间小于预定的第二平均调用时间阈值,则自动地缩减所述目标连接池的节点数量。
本发明所公开的数据通信连接池自动管理装置具有以下优点:能够针对实际需求情况自动调节连接池的大小以及组成连接池的物理和/或虚拟节点的数量,从而能够确保系统的可靠性和时效性,并且会显著地提高系统的整体性能。
附图说明
结合附图,本发明的技术特征以及优点将会被本领域技术人员更好地理解,其中:
图1是根据本发明的实施例的数据通信连接池自动管理装置的示意性结构图。
具体实施方式
图1是根据本发明的实施例的数据通信连接池自动管理装置的示意性结构图。如图1所示,本发明所公开的数据通信连接池自动管理装置包括外部调用单元1、连接池大小管理单元2以及节点管理单元3。所述外部调用单元1接收外部对象通过其提供的调用接口而发送的连接池调用命令,并随之按照预定分配策略为该外部对象分配目标连接池中的一条空闲连接,以供该外部对象在所述连接上完成后续的数据通信过程,以及在所述数据通信过程完成后释放所述连接。所述连接池大小管理单元2根据所述目标连接池的历史统计数据周期性地调节所述目标连接池的大小。所述节点管理单元3周期性地监测构成所述目标连接池的各个(物理和/或虚拟)节点的运行状态,并且基于监测结果调节所述目标连接池的节点的数量。
优选地,在本发明所公开的数据通信连接池自动管理装置中,所述预定分配策略包括负载均衡策略,所述负载均衡策略在需要为外部对象分配空闲连接时以如下方式确定用于分配的空闲连接:(1)计算所述目标连接池中的所有节点的当前负载率(即该节点的当前活动连接数与其可提供的最大连接数之比),并选择当前负载率最小的节点作为目标节点;(2)确定所述目标节点是否还具有负载余量,并且如果其具有负载余量,则将所述连接池调用命令路由到所述目标节点,并随之由所述目标节点为该外部对象分配目标连接池中的一条空闲连接,如果其不具有负载余量,则向所述外部对象返回“无可用连接”的响应并终止空闲连接分配过程。
优选地,在本发明所公开的数据通信连接池自动管理装置中,所述连接池大小管理单元2以如下方式调节所述目标连接池的大小:(1)在每个自然运行周期(例如1天)内通过周期性的采样(例如1秒一次)获取对应于多个采样周期(例如1小时)的活动连接数统计值,其中每个采样周期的活动连接数统计值是该采样周期内所有采样值的平均值(例如在1小时的采样周期内进行的所有每秒一次的采样的采样值的均值);(2)在两个相邻的自然运行周期的切换期内,将前一个自然运行周期(即刚过去的自然运行周期)的每个采样周期时间值及其对应的活动连接数统计值作为二维坐标系中的横坐标和纵坐标值而构成二维坐标系中的多个点(即每个点对应一个采样周期,且其坐标为(采样周期时间值T(例如1-24,分别对应一天的24个小时),该采样周期对应的活动连接数统计值)),并对所述多个点进行曲线拟合以获得拟合曲线函数,并将该拟合曲线函数在所述二维坐标系中沿纵坐标向上平移Cr值以得到扩缩参考曲线,所述Cr值为连接数余量储备参数;(3)以预先设定的连接池扩缩步长S(其由管理人员预先配置)对所述扩缩参考曲线按纵坐标采样(即采样间隔等于连接池扩缩步长S)以获得一组采样点(T1, C1)、(T2, C2)…(Tn, Cn),其按时间值T从小到大排列,n为采样点个数,其为大于1的正整数;(4)在后一个自然运行周期(即将要开始的新的自然运行周期)内,根据n个离散的时间点T1到Tn设置定时器,以致每当到达所述后一个自然运行周期内的对应的一个时间点Ti时就比较Ci、Ci-1、当前连接池大小Cc、以及当前活动连接数Ca之间的大小关系,并且如果Ci > Ci-1且Ci > Cc则将所述目标连接池的大小扩展到Ci,如果Ci > Ci-1且Ci <= Cc则不做连接池扩缩操作,而如果Ci < Ci-1则将所述目标连接池的大小缩减到Ci与Ca的最大值,并且如果Ci = Ci-1则不做连接池扩缩操作。
优选地,在本发明所公开的数据通信连接池自动管理装置中,当为外部对象分配空闲连接时如果活动连接数将要大于所述目标连接池的当前可用连接的数量时,则只要所述目标连接池的当前可用连接的数量小于所述目标连接池的最大支持连接数,所述连接池大小管理单元2就自动地对所述目标连接池进行一次步长为1的扩展。
优选地,在本发明所公开的数据通信连接池自动管理装置中,所述节点管理单元3以如下方式监测构成所述目标连接池的各个节点的运行状态:周期性地监测各个节点的调用超时率是否超过预定的调用超时率阈值,并且以轮循的方式周期性的监测各个节点对保活请求的应答。
优选地,在本发明所公开的数据通信连接池自动管理装置中,所述节点管理单元3以如下方式基于监测结果调节所述目标连接池的节点的数量:(1)如果某个节点的调用超时率超过预定的调用超时率阈值,则确定该节点已失效,并随之移除该节点;(2)如果未收到某个节点对保活请求的应答的次数超过预定的阈值,则确定该节点已失效,并随之移除该节点;(3)将失效的节点移入观察队列,并且周期性地向所述观察队列中的节点发送探测消息以确定该节点的故障是否已排除,如果接收到某个节点的成功应答的次数超过预定的阈值,则确定该节点的故障已排除,并重新将该节点加入所述目标连接池的可用节点集群中;(4)周期性地监测所述目标连接池的平均调用时间,如果平均调用时间超过预定的第一平均调用时间阈值,则自动地扩大所述目标连接池的节点数量,如果平均调用时间小于预定的第二平均调用时间阈值,则自动地缩减所述目标连接池的节点数量。
由上可见,本发明所公开的数据通信连接池自动管理装置具有下列优点:能够针对实际需求情况自动调节连接池的大小以及组成连接池的物理和/或虚拟节点的数量,从而能够确保系统的可靠性和时效性,并且会显著地提高系统的整体性能。
尽管本发明是通过上述的优选实施方式进行描述的,但是其实现形式并不局限于上述的实施方式。应该认识到:在不脱离本发明主旨和范围的情况下,本领域技术人员可以对本发明做出不同的变化和修改。
Claims (5)
1.一种数据通信连接池自动管理装置,所述数据通信连接池自动管理装置包括:
外部调用单元,所述外部调用单元接收外部对象通过其提供的调用接口而发送的连接池调用命令,并随之按照预定分配策略为该外部对象分配目标连接池中的一条空闲连接,以供该外部对象在所述连接上完成后续的数据通信过程,以及在所述数据通信过程完成后释放所述连接;
连接池大小管理单元,所述连接池大小管理单元根据所述目标连接池的历史统计数据周期性地调节所述目标连接池的大小;
节点管理单元,所述节点管理单元周期性地监测构成所述目标连接池的各个节点的运行状态,并且基于监测结果调节所述目标连接池的节点的数量;
其中,所述节点管理单元以如下方式监测构成所述目标连接池的各个节点的运行状态:周期性地监测各个节点的调用超时率是否超过预定的调用超时率阈值,并且以轮循的方式周期性的监测各个节点对保活请求的应答。
2.根据权利要求1所述的数据通信连接池自动管理装置,其特征在于,所述预定分配策略包括负载均衡策略,所述负载均衡策略在需要为外部对象分配空闲连接时以如下方式确定用于分配的空闲连接:(1)计算所述目标连接池中的所有节点的当前负载率,并选择当前负载率最小的节点作为目标节点;(2)确定所述目标节点是否还具有负载余量,并且如果其具有负载余量,则将所述连接池调用命令路由到所述目标节点,并随之由所述目标节点为该外部对象分配目标连接池中的一条空闲连接,如果其不具有负载余量,则向所述外部对象返回“无可用连接”的响应并终止空闲连接分配过程。
3.根据权利要求1所述的数据通信连接池自动管理装置,其特征在于,所述连接池大小管理单元以如下方式调节所述目标连接池的大小:(1)在每个自然运行周期内通过周期性的采样获取对应于多个采样周期的活动连接数统计值,其中每个采样周期的活动连接数统计值是该采样周期内所有采样值的平均值;(2)在两个相邻的自然运行周期的切换期内,将前一个自然运行周期的每个采样周期时间值及其对应的活动连接数统计值作为二维坐标系中的横坐标和纵坐标值而构成二维坐标系中的多个点,并对所述多个点进行曲线拟合以获得拟合曲线函数,并将该拟合曲线函数在所述二维坐标系中沿纵坐标向上平移Cr值以得到扩缩参考曲线,所述Cr值为连接数余量储备参数;(3)以预先设定的连接池扩缩步长S对所述扩缩参考曲线按纵坐标采样以获得一组采样点(T1, C1)、(T2, C2)…(Tn, Cn),其按时间值T从小到大排列,n为采样点个数,其为大于1的正整数;(4)在后一个自然运行周期内,根据n个离散的时间点T1到Tn设置定时器,以致每当到达所述后一个自然运行周期内的对应的一个时间点Ti时就比较Ci、Ci-1、当前连接池大小Cc、以及当前活动连接数Ca之间的大小关系,并且如果Ci > Ci-1且Ci > Cc则将所述目标连接池的大小扩展到Ci,如果Ci > Ci-1且Ci <= Cc则不做连接池扩缩操作,而如果Ci < Ci-1则将所述目标连接池的大小缩减到Ci与Ca的最大值,并且如果Ci = Ci-1则不做连接池扩缩操作。
4.根据权利要求3所述的数据通信连接池自动管理装置,其特征在于,当为外部对象分配空闲连接时如果活动连接数将要大于所述目标连接池的当前可用连接的数量时,则只要所述目标连接池的当前可用连接的数量小于所述目标连接池的最大支持连接数,所述连接池大小管理单元就自动地对所述目标连接池进行一次步长为1的扩展。
5.根据权利要求1所述的数据通信连接池自动管理装置,其特征在于,所述节点管理单元以如下方式基于监测结果调节所述目标连接池的节点的数量:(1)如果某个节点的调用超时率超过预定的调用超时率阈值,则确定该节点已失效,并随之移除该节点;(2)如果未收到某个节点对保活请求的应答的次数超过预定的阈值,则确定该节点已失效,并随之移除该节点;(3)将失效的节点移入观察队列,并且周期性地向所述观察队列中的节点发送探测消息以确定该节点的故障是否已排除,如果接收到某个节点的成功应答的次数超过预定的阈值,则确定该节点的故障已排除,并重新将该节点加入所述目标连接池的可用节点集群中;(4)周期性地监测所述目标连接池的平均调用时间,如果平均调用时间超过预定的第一平均调用时间阈值,则自动地扩大所述目标连接池的节点数量,如果平均调用时间小于预定的第二平均调用时间阈值,则自动地缩减所述目标连接池的节点数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410838050.7A CN105591790B (zh) | 2014-12-30 | 2014-12-30 | 数据通信连接池管理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410838050.7A CN105591790B (zh) | 2014-12-30 | 2014-12-30 | 数据通信连接池管理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105591790A CN105591790A (zh) | 2016-05-18 |
CN105591790B true CN105591790B (zh) | 2019-05-10 |
Family
ID=55931049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410838050.7A Active CN105591790B (zh) | 2014-12-30 | 2014-12-30 | 数据通信连接池管理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105591790B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684397A (zh) * | 2018-12-24 | 2019-04-26 | 广东亿迅科技有限公司 | 基于influx dB数据库连接池和管理方法 |
CN111147282B (zh) * | 2019-12-05 | 2022-09-20 | 中国建设银行股份有限公司 | 自动维护drcp连接池的装置、方法及存储介质 |
CN111432011B (zh) * | 2020-03-30 | 2023-02-17 | 百度国际科技(深圳)有限公司 | 区块链的网络通信方法和设备 |
CN114221964B (zh) * | 2021-12-13 | 2023-10-03 | 中国平安财产保险股份有限公司 | 一种访问请求处理方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007099264A1 (fr) * | 2006-03-03 | 2007-09-07 | France Telecom | Procede d'organisation de noeuds d'un reseau en groupements de noeuds, programme d'ordinateur pour la mise en oeuvre d'un tel procede, et dispositif de communication formant noeud d'un reseau de noeuds |
CN101789960A (zh) * | 2009-12-31 | 2010-07-28 | 中国人民解放军国防科学技术大学 | 邻居会话负载处理方法及装置 |
CN102594727A (zh) * | 2012-02-07 | 2012-07-18 | 苏州阔地网络科技有限公司 | 一种分布式即时通讯系统及其通讯方法 |
CN103259832A (zh) * | 2012-12-24 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 实现动态负载平衡、故障诊断与转移的群集资源控制方法 |
-
2014
- 2014-12-30 CN CN201410838050.7A patent/CN105591790B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007099264A1 (fr) * | 2006-03-03 | 2007-09-07 | France Telecom | Procede d'organisation de noeuds d'un reseau en groupements de noeuds, programme d'ordinateur pour la mise en oeuvre d'un tel procede, et dispositif de communication formant noeud d'un reseau de noeuds |
CN101789960A (zh) * | 2009-12-31 | 2010-07-28 | 中国人民解放军国防科学技术大学 | 邻居会话负载处理方法及装置 |
CN102594727A (zh) * | 2012-02-07 | 2012-07-18 | 苏州阔地网络科技有限公司 | 一种分布式即时通讯系统及其通讯方法 |
CN103259832A (zh) * | 2012-12-24 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 实现动态负载平衡、故障诊断与转移的群集资源控制方法 |
Non-Patent Citations (1)
Title |
---|
自适应数据库连接池的研究;朱长生等;《计算机工程与应用》;20031221;第36卷;187-189 |
Also Published As
Publication number | Publication date |
---|---|
CN105591790A (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230093389A1 (en) | Service request allocation method and apparatus, computer device, and storage medium | |
JP6450835B2 (ja) | エネルギーセービング制御方法、管理サーバ及びネットワークデバイス | |
Lee et al. | Load-balancing tactics in cloud | |
Kliazovich et al. | CA-DAG: Modeling communication-aware applications for scheduling in cloud computing | |
CN108712464A (zh) | 一种面向集群微服务高可用的实现方法 | |
CN105591790B (zh) | 数据通信连接池管理装置 | |
US11321139B2 (en) | Streaming traffic pattern for public cloud auto scaling | |
CN108924221A (zh) | 分配资源的方法和装置 | |
US20220014434A1 (en) | Slice Resource Deployment Method and Apparatus, and Slice Manager and Computer Storage Medium | |
CN103607424B (zh) | 一种服务器连接方法及服务器系统 | |
CN111061560A (zh) | 云渲染资源调度方法、装置、电子设备及存储介质 | |
CN109067579A (zh) | 面向底层节点失效的5g网络切片拓扑设计及可靠映射方法 | |
CN103152393A (zh) | 一种云计算的计费方法和计费系统 | |
CN105656964B (zh) | 数据推送的实现方法及装置 | |
CN104660689B (zh) | 分布式计算系统 | |
CN108322358A (zh) | 异地多活的分布式消息发送、处理、消费方法及装置 | |
CN105247834B (zh) | 虚拟网络功能中网络资源的分配方法、编排器及管理器 | |
CN103744735B (zh) | 一种多核资源的调度方法及装置 | |
KR101448413B1 (ko) | Atca-기반 장비에서 통신 트래픽을 스케줄링하기 위한 방법 및 장치 | |
CN112448987B (zh) | 一种熔断降级的触发方法、系统和存储介质 | |
JP2012231636A (ja) | 電力系統の監視制御システム | |
CN111770026B (zh) | 一种网络流量控制方法和装置 | |
CN111654526B (zh) | 一种流媒体服务器的负载均衡方法及系统 | |
CN105515844A (zh) | 一种提高软件定义网络可靠性的系统 | |
KR101943398B1 (ko) | Rf 통신과 이동통신망기술을 접목한 원격검침모뎀 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |