数据库的负载均衡方法、存储介质及设备技术

技术编号:37366745 阅读:10 留言:0更新日期:2023-04-27 07:13
本发明专利技术提供了一种数据库的负载均衡方法、存储介质及设备。数据库的负载均衡方法包括:创建多个连接服务,多个连接服务用于与多个服务器节点连接,并且每个服务器节点连接多个连接服务;利用连接服务向服务器节点发送负载通知开启命令,以在服务器节点开启发送负载信息的任务;接收并存储负载信息;接收客户端的连接请求;根据负载信息筛选出负载率最低的服务器节点;向连接请求返回负载率最低的服务器节点的空闲连接服务。在每次接收到新的连接请求后,能够将向新的连接请求返回负载率最低的服务器节点的空闲连接。从而,保证负载率最低的服务器节点来执行新的任务请求,有助于提高服务器节点负载率的均匀性。务器节点负载率的均匀性。务器节点负载率的均匀性。

【技术实现步骤摘要】
数据库的负载均衡方法、存储介质及设备


[0001]本专利技术涉及数据库
,特别是涉及一种数据库的负载均衡方法、存储介质及设备。

技术介绍

[0002]在现有的数据库系统中,通常会配置多个数据库服务器来进行负载均衡,以对外提供稳定的服务。具体来说,负载均衡就是将来自客户端的多个任务请求分摊到多个数据库服务器进行执行,从而在一定程度上提高响应效率。目前,数据库实现负载均衡的方式为随机分配,也就是在接收到新的任务请求的情况下,将新任务请求随机分配到一个数据库服务器进行执行。由于是随机分配,虽然能够对任务请求进行分摊处理,但是容易出现数据库服务器之间的负载率差距较大的情况,造成任务请求响应慢的问题。

技术实现思路

[0003]本专利技术的一个目的是要提供一种能够解决上述任一问题的数据库服务器连接的负载均衡方法、存储介质及设备。
[0004]本专利技术一个进一步的目的是要简化运行程序。
[0005]本专利技术另一个进一步的目的是要保证重要任务的及时执行。
[0006]特别地,本专利技术提供了一种数据库的负载均衡方法,包括:
[0007]创建多个连接服务,多个连接服务用于与多个服务器节点连接,并且每个服务器节点连接多个连接服务;
[0008]利用连接服务向服务器节点发送负载通知开启命令,以在服务器节点开启发送负载信息的任务;
[0009]接收并存储负载信息;
[0010]接收客户端的连接请求;
[0011]根据负载信息筛选出负载率最低的服务器节点;
[0012]向连接请求返回负载率最低的服务器节点的空闲连接服务。
[0013]可选地,利用连接服务向服务器节点发送负载通知开启命令的步骤包括:
[0014]确定服务器节点的多个连接服务的其中一个作为负载连接服务;
[0015]利用负载连接服务向服务器节点发送负载通知开启命令;
[0016]接收并存储负载信息的步骤包括:
[0017]持续接收并存储负载连接服务发送的负载信息。
[0018]可选地,确定服务器节点的多个连接服务的其中一个作为负载连接服务的步骤包括:
[0019]将服务器节点的首次连接所采用的连接服务作为负载连接服务。
[0020]可选地,向连接请求返回负载率最低的服务器节点的空闲连接服务的步骤之前包括:
[0021]判断服务器节点是否存在空闲连接服务,若是,执行向连接请求返回空闲连接服务的步骤,若否,向连接请求返回负载连接服务。
[0022]可选地,向连接请求返回负载连接服务的步骤之后包括:
[0023]在连接请求的任务执行完成后,判断服务器节点是否存在其他空闲连接服务,若是,继续利用归还的负载连接服务接收负载信息,若否,使归还的负载连接服务处于空闲状态。
[0024]可选地,使归还的负载连接服务处于空闲状态的步骤之后包括:
[0025]检测服务器节点是否存在多个空闲连接服务;
[0026]若服务器节点存在多个空闲连接服务,选择多个空闲连接服务中的一个作为负载连接服务。
[0027]可选地,负载通知开启命令包括通知间隔,持续接收并存储所述负载连接服务发送的负载信息的步骤包括:
[0028]持续接收负载连接服务按照通知间隔定时发送的负载信息。
[0029]可选地,负载信息包括所述服务器节点的活动会话数、非活动会话数、CPU使用率、内存使用率和输入输出使用率,根据负载信息筛选出负载率最低的服务器节点的步骤包括:
[0030]根据活动会话数+非活动会话数*第一预设修正值+CPU使用率*第二预设修正值+内存使用率*第三预设修正值+输入输出使用率*第四预设修正值计算负载率。
[0031]在本专利技术的另一个方面,还提供了一种机器可读存储介质,其上存储有机器可执行程序,所述机器可执行程序被处理器执行时实现根据上述任一项的数据库的负载均衡方法。
[0032]在本专利技术的又一个方面,还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的机器可执行程序,并且所述处理器执行所述机器可执行程序时实现根据上述任一项的数据库的负载均衡方法。
[0033]本专利技术的数据库的负载均衡方法通过创建多个连接服务,并使每个服务器节点连接多个连接服务。开启负载通知后,接收并存储服务端节点的负载信息。在接收到客户端的连接请求后,可以根据负载信息筛选出负载率最低的服务器节点,继而向客户端返回负载率最低的服务器节点的空闲连接。也就是说,在每次接收到新的连接请求后,能够向新的连接请求返回负载率最低的服务器节点的空闲连接。从而,保证负载率最低的服务器节点来执行新的任务请求。因此,有助于避免新任务在随机分配情况下被分至负载率较高的服务器节点,导致不同服务器节点之间负载率差距越来越大的问题。进而,有助于提高服务器节点负载率的均匀性,使得服务器节点之间的负载更加均衡,有利于提高服务器节点的处理效率。
[0034]进一步地,本专利技术的数据库的负载均衡方法通过确定一个负载连接服务,在确定负载连接服务后,利用负载连接服务持续发送服务器节点的负载信息。也就是说,一直由确定好的负载连接服务来完成发送负载信息的任务。因此,有效地避免了频繁更换执行发送负载信息任务的连接服务的情况,从而有助于简化运行程序。
[0035]更进一步地,本专利技术的数据库的负载均衡方法通过在负载率最低的服务器节点不存在空闲服务的情况下,停止负载连接服务发送负载信息的任务并向连接请求返回空闲下
来的负载连接服务,从而使得连接请求的任务得以执行。因为连接请求的任务相对于发送负载信息的任务来说,一般连接请求的任务结果是用户更加急需的。而且,因为负载率最低的服务器节点也不存在空闲服务,所以可以在短时间内停止发送负载信息。因此,通过将负载连接服务变为空闲状态来执行连接请求的任务,有助于保证重要任务的及时执行,从而保证用户的使用体验。
[0036]根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。
附图说明
[0037]后文将参照附图以示例性而非限制性的方式详细描述本专利技术的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
[0038]图1是根据本专利技术一个实施例的数据库的负载均衡方法的示意性流程图;
[0039]图2是根据本专利技术一个实施例的数据库系统的示意图;
[0040]图3是根据本专利技术另一个实施例的数据库的负载均衡方法的示意性流程图;
[0041]图4是根据本专利技术又一个实施例的数据库的负载均衡方法的示意性流程图;
[0042]图5是根据本专利技术又一个实施例的数据库的负载均衡方法的示意性流程图;
[0043]图6是根据本专利技术又一个实施例的数据库的负载均衡方法的示意性流程图;
[0044]图7是根据本专利技术一个实施例的机本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库的负载均衡方法,包括:创建多个连接服务,所述多个连接服务用于与多个服务器节点连接,并且每个所述服务器节点连接多个所述连接服务;利用连接服务向所述服务器节点发送负载通知开启命令,以在所述服务器节点开启发送负载信息的任务;接收并存储所述负载信息;接收客户端的连接请求;根据所述负载信息筛选出负载率最低的服务器节点;向所述连接请求返回所述负载率最低的所述服务器节点的空闲连接服务。2.根据权利要求1所述的数据库的负载均衡方法,其中,所述利用连接服务向所述服务器节点发送负载通知开启命令的步骤包括:确定所述服务器节点的多个所述连接服务的其中一个作为负载连接服务;利用所述负载连接服务向所述服务器节点发送负载通知开启命令;所述接收并存储所述负载信息的步骤包括:持续接收并存储所述负载连接服务发送的负载信息。3.根据权利要求2所述的数据库的负载均衡方法,其中,所述确定所述服务器节点的多个所述连接服务的其中一个作为负载连接服务的步骤包括:将所述服务器节点的首次连接所采用的连接服务作为所述负载连接服务。4.根据权利要求2所述的数据库的负载均衡方法,其中,所述向所述连接请求返回所述负载率最低的所述服务器节点的空闲连接服务的步骤之前包括:判断所述服务器节点是否存在空闲连接服务,若是,执行向所述连接请求返回所述空闲连接服务的步骤,若否,向所述连接请求返回所述负载连接服务。5.根据权利要求4所述的数据库的负载均衡方法,其中,所述向所述连接请求返回所述负载连接服务的步骤之后包括:在所述连接请求的任务执行完成后...

【专利技术属性】
技术研发人员:李威李楠
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1