一种负载均衡方法及系统技术方案

技术编号:11158258 阅读:45 留言:0更新日期:2015-03-18 14:15
本发明专利技术公开了一种负载均衡方法及系统,在负载均衡过程中,登记服务提供模块所能提供的服务;然后在服务使用模块发起的服务请求后,根据该请求获取能提供对应服务的服务提供模块的列表,进而根据该列表,通过负载均衡算法从该列表中选择服务提供模块执行服务使用模块所请求的服务。可见,本发明专利技术是根据某一种服务的服务提供模块的列表进行负载计算,也即是以一种服务为单位进行负载均衡计算,并非是以一个服务器为单位进行负载均衡计算;因此可避免对同一服务器提供的其他服务发生误判的情况,也就不会影响到由同一服务提供模块提供的其他服务的执行,进而可提高资源的利用率。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体涉及一种负载均衡方法及系统
技术介绍
随着系统业务的访问量增加、数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担。而负载均衡,就是将负载(工作任务)进行平衡、分摊到多个操作单元上进行执行,从而共同完成工作任务,以便获得更高的资源利用率,提供系统的吞吐率,降低响应时间,从而避免负载过重。现有的负载均衡有硬负载均衡和软负载均衡两种方式;其中,硬负载均衡是采用负载均衡设备,将服务请求以服务提供者(及服务器)为单位,按照负载规则分摊到各个操作单元上,这种硬负载均衡成本比较高,而随着业务量的增加,其设备成本也会不断的增加。软负载均衡技术采用软件替代硬件设备,在客户端有待业务处理的时候,直接选出负载较轻的服务器,然后与该服务器上的服务对象建立连接,由服务对象处理完成客户端发送的相应业务请求。不管是现有的软负载均衡技术,还是硬负载均衡技术,其在进行负载均衡的计算过程中,都是以服务器为单位作为判断标准。在在分布式应用系统中当存在大量客户端并发操作时,与客户端建立连接的服务器则可能处理多个服务类型的请求,提供多种服务,系统在运行过程中,可能会出现一个服务器中的某一种服务负载较重,其他服务的负载较轻的情况;此时以一个服务器为单位作为判断标准时,会导致该服务器中的某一个服务负载较大、运行过慢时,就会导致判断该整个服务器负载过重,这对该服务器中其他负载并不过程的服务来说则是一个误判,从而影响到该服务器中其他服务的执行,降低资源的利用率。
技术实现思路
本专利技术要解决的主要技术问题是,提供一种负载均衡方法及系统,解决现有负载均衡处理过程中以服务器为单位判断负载是否过重,导致对该服务器中负载并未过重的服务产生误判,进而降低了资源的利用率。为解决上述技术问题,本专利技术提供一种负载均衡方法,包括:登记服务提供模块所能提供的服务,根据服务使用模块发起的服务请求,获取能提供对应服务的服务提供模块的列表;根据所述列表,通过负载均衡算法从该列表中选择服务提供模块执行所述服务使用模块所请求的服务。在本专利技术的一种实施例中,登记服务提供模块所能提供的服务包括:服务提供模块向监控模块登记其所提供的服务;所述监控模块生成与各种服务对应的服务提供模块的列表。在本专利技术的一种实施例中,根据服务使用模块发起的服务请求,获取能提供对应服务的服务提供模块的列表包括:服务使用模块向所述监控模块发送服务请求;所述监控模块根据所述服务请求向所述服务使用模块反馈能提供对应服务的服务提供模块的列表。在本专利技术的一种实施例中,根据所述列表,通过负载均衡算法从该列表中选择服务提供模块执行所述服务使用模块所请求的服务包括:所述服务使用模块根据所述列表,通过负载均衡算法从该列表中选择相应的服务提供模块;所述服务使用模块调用所选择的服务提供模块执行其所请求的服务。在本专利技术的一种实施例中,所述方法还包括:统计某一服务当前的负荷情况,根据统计结果确定该服务当前负荷是否小于第一预设阈值,如是,则从该服务的服务提供模块的列表中退出至少一个服务提供模块。在本专利技术的一种实施例中,所述方法还包括:统计某一服务当前的负荷情况,根据统计结果确定该服务当前负荷是否大于第二预设阈值,如是,则在该服务的服务提供模块的列表中增加至少一个服务提供模块。为了解决上述问题,本专利技术还提供了一种负载均衡系统,包括:监控模块、负载均衡处理模块;所述监控模块包括登记子模块,用于登记服务提供模块所能提供的服务,根据服务使用模块发起的服务请求,获取能提供对应服务的服务提供模块的列表;所述负载均衡处理模块用于根据所述列表,通过负载均衡算法从该列表中选择服务提供模块执行所述服务使用模块所请求的服务。在本专利技术的一种实施例中,包括:所述登记子模块登记服务提供模块所能提供的服务包括:服务提供模块向所述登记子模块登记其所提供的服务;所述登记子模块生成与各种服务对应的服务提供模块的列表。在本专利技术的一种实施例中,所述登记子模块根据服务使用模块发起的服务请求,获取能提供对应服务的服务提供模块的列表包括:服务使用模块向所述登记子模块发送服务请求;所述登记子模块根据所述服务请求向所述负载均衡处理模块反馈能提供对应服务的服务提供模块的列表。在本专利技术的一种实施例中,所述负载均衡处理模块设置于各服务使用模块中。在本专利技术的一种实施例中,所述监控模块还包括第一统计子模块,用于统计某一服务当前的负荷情况,根据统计结果确定该服务当前负荷是否小于第一预设阈值,如是,则从该服务的服务提供模块的列表中退出至少一个服务提供模块。在本专利技术的一种实施例中,所述监控模块还包括第二统计子模块,用于统计某一服务当前的负荷情况,根据统计结果确定该服务当前负荷是否大于第二预设阈值,如是,则在该服务的服务提供模块的列表中增加至少一个服务提供模块。本专利技术的有益效果是:本专利技术提供的负载均衡方法及系统,在负载均衡过程中,登记服务提供模块所能提供的服务;然后在服务使用模块发起的服务请求后,根据该请求获取能提供对应服务的服务提供模块的列表,进而根据该列表,通过负载均衡算法从该列表中选择服务提供模块执行服务使用模块所请求的服务。可见,本专利技术是根据某一种服务的服务提供模块的列表进行负载计算,也即是以一种服务为单位进行负载均衡计算,并非是以一个服务器为单位进行负载均衡计算;因此可避免对同一服务器提供的其他服务发生误判的情况,也就不会影响到由同一服务提供模块提供的其他服务的执行,进而可提高资源的利用率。附图说明图1为本专利技术一种实施例中的负载均衡方法流程示意图;图2为图1中登记服务提供模块所能提供的服务的流程示意图;图3为图1中根据服务请求获取服务提供模块的列表的流程示意图;图4为图1中根据服务提供模块的列表选择服务提供模块的流程示意图;图5为本专利技术一种实施例中减少服务提供模块数量的流程示意图;图6为本专利技术一种实施例中增加服务提供模块数量的流程示意图;图7为本专利技术一种实施例中的负载均衡系统结构示意图一;图8为本专利技术一种实施例中的负载均衡系统结构示意图二;图9为基于图8所示的系统进行负载均衡方法流程示意图;图10为基于图8所示的系统减少服务提供模块数量的流程示意图。具体实施方式本专利技术的提供的负载均衡方法以单个服务为单位进行负载均衡处理,并非以一本文档来自技高网
...
一种负载均衡方法及系统

【技术保护点】
一种负载均衡方法,其特征在于,包括:登记服务提供模块所能提供的服务,根据服务使用模块发起的服务请求,获取能提供对应服务的服务提供模块的列表;根据所述列表,通过负载均衡算法从该列表中选择服务提供模块执行所述服务使用模块所请求的服务。

【技术特征摘要】
1.一种负载均衡方法,其特征在于,包括:
登记服务提供模块所能提供的服务,根据服务使用模块发起的服务请求,
获取能提供对应服务的服务提供模块的列表;
根据所述列表,通过负载均衡算法从该列表中选择服务提供模块执行所述
服务使用模块所请求的服务。
2.如权利要求1所述的负载均衡方法,其特征在于,登记服务提供模
块所能提供的服务包括:
服务提供模块向监控模块登记其所提供的服务;
所述监控模块生成与各种服务对应的服务提供模块的列表。
3.如权利要求2所述的负载均衡方法,其特征在于,根据服务使用模
块发起的服务请求,获取能提供对应服务的服务提供模块的列表包括:
服务使用模块向所述监控模块发送服务请求;
所述监控模块根据所述服务请求向所述服务使用模块反馈能提供对应服务
的服务提供模块的列表。
4.如权利要求1-3任一项所述的负载均衡方法,其特征在于,根据所
述列表,通过负载均衡算法从该列表中选择服务提供模块执行所述服务使用模
块所请求的服务包括:
所述服务使用模块根据所述列表,通过负载均衡算法从该列表中选择相应
的服务提供模块;
所述服务使用模块调用所选择的服务提供模块执行其所请求的服务。
5.如权利要求1-3任一项所述的负载均衡方法,其特征在于,所述方
法还包括:
统计某一服务当前的负荷情况,根据统计结果确定该服务当前负荷是否小
于第一预设阈值,如是,则从该服务的服务提供模块的列表中退出至少一个服
务提供模块。
6.如权利要求1-3任一项所述的负载均衡方法,其特征在于,所述方

\t法还包括:
统计某一服务当前的负荷情况,根据统计结果确定该服务当前负荷是否大
于第二预设阈值,如是,则在该服务的服务提供模块的列表中增加至少一个服

【专利技术属性】
技术研发人员:刘德洪
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1