一种分布式系统的服务负载均衡方法及装置的制作方法

文档序号:7900025阅读:136来源:国知局
专利名称:一种分布式系统的服务负载均衡方法及装置的制作方法
技术领域
本发明涉及一种负载均衡技术,尤其涉及一种分布式环境下的服务负载均衡技术。
背景技术
随着工业控制系统的进一步延伸和发展,需要提供更为强大的处理能力,以便能够更为及时地处理与日俱增的用户访问量和处理请求。一般通过设置一系列提供相同服务内容的服务器以组成服务器集群来响应客户端的处理请求。在收到来自客户端的处理请求后,需要进行负载均衡计算以决定将该请求具体发往哪一台服务器进行处理。分布式系统给用户提供了一个丰富的资源集合,因而日益得以广泛的应用并受到 人们的重视,在现有技术中,一般按照集群中的各台计算机或者服务器的网口流量来进行负载均衡计算,判定各台计算机或服务器的负载状况。然而随着研究的深入进行,本发明的发明人发现,仅使用网口流量进行负载均衡计算,在某些时刻,分布式系统中一些服务的负载很重而另外一些服务的负载却很轻。进而本发明的发明人发现流量的大小对于服务器或计算机的负载的体现有很大片面性,有的服务信息交互虽然少,但是计算复杂。鉴于各台服务器之间存在个体性能差异,及服务所耗资源的差异,仅依靠网口流量来进行负载均衡计算,无法实现真正的自适应负载均衡服务调度机制,不能高效利用所有硬件资源,不能有效控制系统过载的发生概率。并且,现有技术一般都是基于服务器进行负载均衡,即在负载均衡过程中对服务器整体进行主备切换,然而实际应用中,在同一时刻,服务器上各服务的运行负载是不相同的,若是基于服务器进行整体切换,则会将该服务器上所有正常的或超负载的服务均切换至另一服务器上,容易造成另一台服务器的繁忙。且在同一时刻只启用主备服务器中的一台,并没有充分利用已有的硬件资源。为了解决上述问题,在分布式系统中,一种新的服务负载均衡方法由此应运而生。

发明内容
本发明主要解决的技术问题是提供一种分布式系统的服务负载均衡方法及装置,使得能够更合理、准确地判断分布式系统中服务的繁忙程度,有效控制系统过载的发生概率,且能够更为有效地利用分布式系统中所有硬件资源,实现对服务器上各服务之间的灵活部署。为了解决上述技术问题,本发明提供了一种分布式系统的服务负载均衡方法,系统中各服务分布在不同工业网络的各服务器中,一个服务分布在多个服务器上,由多个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对应多个网口,进行网络备份,该方法包含以下步骤
保存各服务与服务使用的资源对象之间的对应关系、以及各服务对应的网口 ;在主服务的负荷超出预设门限,或主服务所在服务器的负荷超出预设门限,或主服务对应的各网口中至少η个网口流量低于最小正常值,或主服务对应的各网口中至少m个网口流量超出最高限制值时,对该主服务与备用服务进行主备切换,其中,m、η大于等于I,小于等于该服务对应的所有网口数量;
在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择多个空闲网口,将空闲网口对应的接入地址返回给客户端;客户端从接入地址获取所请求的服务。作为上述技术方案的改进,该服务负荷可以包括服务的线程数量;该服务器负荷可以包括CPU负荷、和/或内存占用率。作为上述技术方案的改进,对该主服务与备用服务进行 主备切换的步骤之前,还可以包含以下步骤定时获取各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量。作为上述技术方案的改进,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择的步骤之前,还可以进一步包含以下步骤
对系统中各服务进行注册,保存服务与该服务使用的资源对象之间的对应关系,服务与网口间的对应关系,服务与所在服务器之间的对应关系,各服务中主服务信息;
根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择的步骤中,根据注册的对应关系找到当前所请求的主服务、和该主服务对应的网口。作为上述技术方案的改进,对该主服务与备用服务进行主备切换的步骤之后,包含以下步骤在注册信息中更新切换后的主服务信息。作为上述技术方案的改进,对该主服务对应的各网口流量进行选择,从中选择多个空闲网口的步骤中,选择一主用空闲网口和一备用空闲网口 ;
将该网口对应的接入地址返回给客户端的步骤中,返回的接入地址至少包括服务名、主用网口 IP地址+端口号、备用网口的IP地址。本发明还提供了一种分布式系统的服务负载均衡装置,系统中各服务分布在不同工业网络的各服务器中,一个服务分布在多个服务器上,由多个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对应多个网口,进行网络备份,该装置包含
存储模块,用于保存各服务与服务使用的资源对象之间的对应关系、以及各服务对应的网口 ;主备切换模块,用于在主服务与备用服务之间进行主备切换;监控模块,用于在主服务的负荷超出预设门限,或主服务所在服务器的负荷超出预设门限,或主服务对应的各网口中至少η个网口流量低于最小正常值,或主服务对应的各网口中至少m个网口流量超出最高限制值时,指示主备切换模块对该主服务与备用服务进行主备切换,其中,m、η大于等于1,小于等于该服务对应的所有网口数量;网口选择模块,用于在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择多个空闲网口 ;入口返回模块,用于将网口选择模块选择的空闲网口对应的接入地址返回给客户端,指示客户端从接入地址获取所请求的服务。作为上述技术方案的改进,服务负荷可以包括服务的线程数量;而服务器负荷可以包括CPU负荷、和/或内存占用率。作为上述技术方案的改进,该装置还可以包含信息获取模块,用于定时获取各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量。作为上述技术方案的改进,该装置还可以进一步包含注册模块,用于对系统中各服务进行注册,并将服务与该服务使用的资源对象之间的对应关系,服务与网口间的对应关系,服务与所在服务器之间的对应关系,各服务中主服务信息保存于所述存储模块中;
网口选择模块根据存储模块中保存的对应关系找到当前所请求服务对应的主服务、和该主服务对应的网口。作为上述技术方案的改进,注册模块还用于在主备切换模块进行主备切换后,更新切换后的主服务信息,并将该更新后的主服务信息保存在存储模块中。作为上述技术方案的改进,网口选择模块中进一步包含以下子模块
选择一主用空闲网口的子模块;
选择一备用空闲网口的子模块;
入口返回模块返回的接入地址可以包括服务名、主用网口 IP地址+端口号、备用网口的IP地址。本发明实施方式与现有技术相比,主要区别及其效果在于在分布式系统中,将各服务分布在不同工业网络的各服务器中,一个服务分布在多个服务器上,由多个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对应多个网口,用于进行网络备份。而当主服务的负荷超出预设门限,或主服务所在服务器的负荷超出预设门限,或主服务对应的各网口的流量低于最小正常值,或主服务对应的各网口的流量超出最高限制值时,对该主服务与备用服务进行主备切换。在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择多个空闲网口,将空闲网口对应的接入地址返回给客户端,客户端从接入地址获取所请求的服务。相对于现有技术仅根据网口流量进行负载均衡,本发明实施方式在综合地考虑了服务的负荷情况,该服务所在服务器的负荷情况和该服务对应的各网口流量后,才确定该服务的繁忙程度,判断是否适合继续使用该服务,并根据判断结果来进行主从服务的切换,从而能够有效地避免因仅靠流量大小来确定服务或服务器的可用性而导致的片面性,防止对部分信息交互少但计算复杂的服务的误判,且能更为准确地判断服务的繁忙、适用程度,有效控制系统过载的发生概率。并且,现有技术一般基于服务器进行负载均衡,即在负载均衡过程中对服务器整体进行主备切换,然而实际应用中,在同一时刻,服务器上各服务的运行负载是不相同的,若是基于服务器进行整体切换,则会将该服务器上所有正常的或超负载的服务均切换至另一服务器上,容易造成另一台服务器的繁忙,并且,在同一时刻只启用主备服务器中的一台,没有充分利用已有的硬件资源。而在本发明实施方式中,仅将服务器上所有超负载的主服务与备用服务进行主备切换,从而能够确保更为有效地利用所有硬件资源,且能够更好地对服务器上各服务进行灵活部署。


下面结合附图和具体实施方式
对本发明作进一步详细说明。图I是本发明第一实施方式的分布式系统的服务负载均衡方法中的主备服务的判断切换流程 图2是本发明第一实施方式的分布式系统的服务负载均衡方法中服务网口的选择流程 图3是本发明第二实施方式的分布式系统的服务负载均衡装置结构图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
·
本发明第一实施方式涉及一种分布式系统的服务负载均衡方法,在分布式系统中,各服务分布在不同工业网络的各服务器中,一个服务分布在多个服务器上,由多个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对应多个网口,用于进行网络备份。分布式系统中各服务需要进行注册,在进行服务注册时,需要保存服务与该服务使用的资源对象之间的对应关系,服务与网口间的对应关系,服务与所在服务器之间的对应关系,以及各服务中主服务信息,都可保存在注册表中。主服务信息的保存可以有各种形式,如在该对应关系中排在最前面的服务即为主服务。具体的分布式系统的服务负载均衡方法包括主备服务判断切换、和服务网口选择两部分,其中主备服务的判断和切换流程,如图I所示。在步骤101中,定时获取各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量。其中,定时获取主服务的各信息的方式可以有多种,如可以由各主服务主动上报;也可以由进行负载均衡的服务器主动向各主服务索取;或者,还可以设置一个服务运行平台(用来管理服务),定时收集服务运行状态,并定时上报。这几种上报方式均不影响本实施方式的最终效果。主服务的负荷可以包括服务的线程数量等信息。具体地说,服务负载均衡装置可以根据该服务上报的线程数量来确定负荷量。例如,实时数据库可以根据订阅数来确定负荷量。而服务器负荷可以包括(PU负荷、内存占用率等信息。举例而言,各主服务每隔十分钟就上报本服务所在服务器的CPU负荷和内存占用率等信息。服务负载均衡装置根据各主服务上报的信息,实时对各主服务的负荷、主服务所在服务器的负荷和主服务对应的各网口流量进行监控,如步骤102至步骤105所示。在步骤102中,判断主服务的负荷是否超出预设门限。如果主服务的负荷超出预设门限,则进入步骤106 ;如果主服务的负荷未超出预设门限,则进入步骤103。主服务的负荷超出预设门限可以包含主服务的线程数量超出预设门限等。在步骤103中,判断主服务所在服务器的负荷是否超出预设门限。如果主服务所在服务器的负荷超出预设门限,则进入步骤106 ;如果主服务所在服务器的负荷未超出预设门限,则进入步骤104。具体地说,服务器负荷可以包括CPU负荷和内存占用率。而主服务所在的服务器的负荷超出预设门限也可以包含多种情况,如主服务所在服务器的CPU负荷超出预设门限;主服务所在服务器的内存占用率超出预设门限等。其中,当服务器满足上述任一情况,均被认定为该服务器的负荷超出预设门限。在步骤104中,判断该主服务对应的各网口中是否有至少η个网口流量低于最小正常值,即网络是否不通。如果该主服务对应的各网口中有超过η (含η)个网口流量低于最小正常值,则判定网络故障,进 入步骤106 ;如果该主服务对应的各网口中流量低于最小正常值的网口数量少于η,则判定网络正常,进入步骤105中。其中η可以根据实际情况设置,η大于等于1,小于等于该服务对应的所有网口数量。假设η为1,则主服务对应的各网口中只要有一个网口流量低于最小正常值,即认为其网络故障,进入步骤106 ;否则认为网络正常,进入步骤105。在步骤105中,判断该主服务对应的各网口中是否有至少m个网口流量超出最高限制值,即网络是否过忙。如果有超过m (含m)个网口流量超出最高限制值,则说明网络过忙,不适合再增加新的服务,进入步骤106 ;如果各网口中超出最高限制值的网口数量少于m,则认为网络正常,返回步骤101,重新实时对各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量进行循环监控。其中m可以根据实际情况设置,m大于等于1,小于等于该服务对应的所有网口数量。假设m为3,则主服务对应的各网口中有3个以上(含3个)网口流量超出最高限制值,才认为该服务器网络过忙,进入步骤106 ;否则认为网络正常,返回步骤101。在步骤106中,对该主服务与备用服务进行主备服务切换。在对服务进行主备切换后,在注册信息中更新切换后的主服务信息。接着返回步骤101,重新实时对各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量继续循环监控。可见,通过上述流程,当系统中某一个服务或其所在的服务器出现问题时,服务负载均衡设备能够自动进行检测并将相应服务切换为备用服务,停止将服务请求分发至该故障的服务,而由其他工作正常的服务继续提供该服务。相对于现有技术仅根据网口流量进行负载均衡,本实施方式在综合地考虑了服务的负荷情况,该服务所在服务器的负荷情况和该服务对应的各网口流量后,才确定该服务的繁忙程度,判断是否适合继续使用该服务,并根据判断结果来进行主从服务的切换。从而能够有效地避免因仅靠流量大小来确定服务的可用性而导致的片面性,防止对部分信息交互少但计算复杂的服务的误判,且能更为准确地判断服务的繁忙、适用程度,有效控制系统过载的发生概率。且现有技术一般基于服务器进行负载均衡,即在负载均衡过程中对服务器整体进行主备切换,而本实施方式基于服务进行主备切换,仅将服务器上所有超负载(包括服务超负载、服务器超负载、服务对应的网口流量过大或断网)的主服务与备用服务进行主备切换,服务切换前所在的原服务器仍然可以提供其他未超负载的服务,从而能够确保更为有效地利用所有硬件资源,实现对服务器上各服务的灵活部署。下面对服务负载均衡中服务网口的选择进行说明
在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择空闲网口,将空闲网口对应的接入地址返回给客户端,客户端从该接入地址获取所请求的服务。具体的分布式系统的服务负载均衡方法中服务网口的选择流程,如图2所示。在步骤201中,收到来自客户端的服务请求。在步骤202中,根据该服务请求中的服务名称和资源对象名称,和注册表中保存的对应关系,找到被请求服务对应的主服务、和该主服务对应的各网口。在步骤203中,对该主服务对应的各网口流量进行判断,并从中选择空闲网口。具体地说,可以预先设置一门限值,当一网口流量低于这个门限值时,该网口即被认定为空闲网口。根据此门限值确定多个空闲网口,并从中选择一主用空闲网口和一备用空闲网口。在步骤204中,将该网口对应的接入地址返回给客户端。其中,返回的接入地址可以包括服务名、主用网口 IP地址+端口号、备用网口的IP地址等。之后,客户端可以从该接入地址获取所请求的服务。本发明第二实施方式涉及一种分布式系统的服务负载均衡装置,如图3所示,系统中各服务分布在不同工业网络的各服务器中,一个服务分布在多个服务器上,由多个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对 应多个网口,进行网络备份,该装置包含
存储模块,用于保存各服务与服务使用的资源对象之间的对应关系、以及各服务对应的网口 ;主备切换模块,用于在主服务与备用服务之间进行主备切换;监控模块,用于在主服务的负荷超出预设门限,或主服务所在服务器的负荷超出预设门限,或主服务对应的各网口中至少η个网口流量低于最小正常值,或主服务对应的各网口中至少m个网口流量超出最高限制值时,对该主服务与备用服务进行主备切换,其中,m、n大于等于1,小于等于该服务对应的所有网口数量;网口选择模块,用于在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择多个空闲网口 ;入口返回模块,用于将网口选择模块选择的空闲网口对应的接入地址返回给客户端,指示客户端从接入地址获取所请求的服务。作为进一步改进,服务负荷可以包括服务的线程数量;而服务器负荷可以包括(PU负荷、和/或内存占用率。作为进一步改进,该装置还可以包含信息获取模块,用于定时获取各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量。注册模块,用于对系统中各服务进行注册,并将服务与该服务使用的资源对象之间的对应关系,服务与网口间的对应关系,服务与所在服务器之间的对应关系,各服务中主服务信息保存于存储模块中;网口选择模块根据存储模块中保存的对应关系找到当前所请求服务对应的主服务、和该主服务对应的网口。作为进一步改进,注册模块还用于在主备切换模块进行主备切换后,更新切换后的主服务信息,并将该更新后的主服务信息保存在存储模块中。作为进一步改进,网口选择模块中可以进一步包含以下子模块选择一主用空闲网口的子模块;选择一备用空闲网口的子模块;其中,入口返回模块返回的接入地址包括服务名、主用网口 IP地址+端口号、备用网口的IP地址。综上所述,本实施方式中,当主服务的负荷超出预设门限,或主服务所在服务器的负荷超出预设门限,或主服务对应的各网口的流量低于最小正常值,或主服务对应的各网口的流量超出最高限制值时,则对该主服务与备用服务进行主备切换。在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择多个空闲网口,将空闲网口对应的接入地址返回给客户端,客户端从接入地址获取所请求的服务。相对于现有技术仅根据网口流量进行负载均衡,本实施方式在综合地考虑了服务的负荷情况,该服务所在服务器的负荷情况和该服务对应的各网口流量后,才确定该服务的繁忙程度,判断是否适合继续使用该服务,并根据判断结果来进行主从服务的切换,从而能够有效地避免因仅靠流量大小来确定服务或服务器的可用性而导致的片面性,防止对部分信息交互少但计算复杂的服务的误判,且能更为准确地判断服务的繁忙、适用程度,有效控制系统过载的发生概率。并且,现有技术一般基于服务器进行负载均衡,即在负载均衡过程中对服务器整体进行主备切换,然而实际应用中,在同一时刻,服务器上各服务的运行负载是不相同的,若是基于服务器进行整体切换,则会将该服务器上所有正常的或超负载的服务均切换至另一服务器上,容易造成另一台服务器的繁忙,并且,在同一时刻只启用主备服务器其中的一台,没有充分利用已有的硬件资源。而在本实施方式中,仅将服务器上所有超负载的主服务与备用服务进行主备切换,从而能够确保更为有效地利用所有硬件资源,实现对服务器上各服务的灵活部署。
虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
权利要求
1.一种分布式系统的服务负载均衡方法,其特征在于,系统中各服务分布在不同工业网络的各服务器中,一个服务至少分布在两个服务器上,由所述至少两个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对应至少两个网口,进行网络备份,该方法包含以下步骤 保存各服务与服务使用的资源对象之间的对应关系、以及各服务对应的网口 ; 在所述主服务的负荷超出预设门限,或所述主服务所在服务器的负荷超出预设门限,或所述主服务对应的各网口中至少η个网口流量低于最小正常值,或所述主服务对应的各网口中至少m个网口流量超出最高限制值时,对该主服务与备用服务进行主备切换,其中,m、η大于等于1,小于等于该服务对应的所有网口数量; 在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择至少一个空闲网口,将所述空闲网口对应的接入地址返回给所述客户端; 所述客户端从所述接入地址获取所请求的服务。
2.根据权利要求I所述的分布式系统的服务负载均衡方法,其特征在于,所述服务负荷至少包括所述服务的线程数量; 所述服务器负荷至少包括以下之一 =CPU负荷、和/或内存占用率。
3.根据权利要求2所述的分布式系统的服务负载均衡方法,其特征在于,所述对该主服务与备用服务进行主备切换的步骤之前,还包含以下步骤 定时获取各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量。
4.根据权利要求2所述的分布式系统的服务负载均衡方法,其特征在于,所述根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择的步骤之前,还包含以下步骤 对所述系统中各服务进行注册,保存服务与该服务使用的资源对象之间的对应关系,服务与网口间的对应关系,服务与所在服务器之间的对应关系,各服务中主服务信息; 所述根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择的步骤中,根据所述注册的对应关系找到当前所请求的主服务、和该主服务对应的网口。
5.根据权利要求4所述的分布式系统的服务负载均衡方法,其特征在于,所述对该主服务与备用服务进行主备切换的步骤之后,包含以下步骤 在注册信息中更新切换后的主服务信息。
6.根据权利要求2所述的分布式系统的服务负载均衡方法,其特征在于,所述对该主服务对应的各网口流量进行选择,从中选择至少一个空闲网口的步骤中,选择一主用空闲网口和一备用空闲网口; 所述将该网口对应的接入地址返回给所述客户端的步骤中,返回的接入地址至少包括服务名、主用网口 IP地址+端口号、备用网口的IP地址。
7.一种分布式系统的服务负载均衡装置,其特征在于,系统中各服务分布在不同工业网络的各服务器中,一个服务至少分布在两个服务器上,由所述至少两个服务器提供相同服务,进行服务备份,其中一个服务为主服务,其余为备份服务,每个服务对应至少两个网口,进行网络备份,该装置包含 存储模块,用于保存各服务与服务使用的资源对象之间的对应关系、以及各服务对应的网口 ; 主备切换模块,用于在主服务与备用服务之间进行主备切换; 监控模块,用于在所述主服务的负荷超出预设门限,或所述主服务所在服务器的负荷超出预设门限,或所述主服务对应的各网口中至少η个网口流量低于最小正常值,或所述主服务对应的各网口中至少m个网口流量超出最高限制值时,指示所述主备切换模块对该主服务与备用服务进行主备切换,其中,m、η大于等于1,小于等于该服务对应的所有网口数量; 网口选择模块,用于在收到来自客户端的服务请求时,根据请求中的服务名称和资源对象名称,找到当前对应的主服务,对该主服务对应的各网口流量进行选择,从中选择至少 一个空闲网口; 入口返回模块,用于将所述网口选择模块选择的空闲网口对应的接入地址返回给所述客户端,指示所述客户端从所述接入地址获取所请求的服务。
8.根据权利要求7所述的分布式系统的服务负载均衡装置,其特征在于,所述服务负荷至少包括所述服务的线程数量; 所述服务器负荷至少包括以下之一 =CPU负荷、和/或内存占用率。
9.根据权利要求8所述的分布式系统的服务负载均衡装置,其特征在于,该装置还包含 信息获取模块,用于定时获取各主服务的负荷信息、该主服务所在服务器的负荷信息、和该主服务对应的各网口流量。
10.根据权利要求8所述的分布式系统的服务负载均衡装置,其特征在于,该装置还包含 注册模块,用于对所述系统中各服务进行注册,并将服务与该服务使用的资源对象之间的对应关系,服务与网口间的对应关系,服务与所在服务器之间的对应关系,各服务中主服务信息保存于所述存储模块中; 所述网口选择模块根据所述存储模块中保存的对应关系找到当前所请求服务对应的主服务、和该主服务对应的网口。
11.根据权利要求10所述的分布式系统的服务负载均衡装置,其特征在于,所述注册模块还用于在所述主备切换模块进行主备切换后,更新切换后的主服务信息,并将该更新后的主服务信息保存在所述存储模块中。
12.根据权利要求8中所述的分布式系统的服务负载均衡装置,其特征在于,所述网口选择模块中进一步包含以下子模块 选择一主用空闲网口的子模块; 选择一备用空闲网口的子模块; 所述入口返回模块返回的接入地址至少包括服务名、主用网口 IP地址+端口号、备用网口的IP地址。
全文摘要
本发明公开了一种分布式系统的服务负载均衡方法及装置,相对于现有技术仅根据网口流量进行负载均衡,本发明在综合地考虑了服务的负荷情况,该服务所在服务器的负荷情况和该服务对应的各网口流量后,才确定该服务的繁忙程度,判断是否适合继续使用该服务,并根据判断结果来进行主从服务的切换,从而能够有效地避免因仅靠流量大小来确定服务或服务器的可用性而导致的片面性,能更为准确地判断服务的繁忙、适用程度,有效控制系统过载的发生概率。并且,本发明仅将服务器上所有超负载的主服务与备用服务进行主备切换,而非对整个服务器进行切换,从而能够确保更为有效地利用所有硬件资源,且能够更好地对服务器上各服务进行灵活部署。
文档编号H04L12/803GK102984184SQ20111025933
公开日2013年3月20日 申请日期2011年9月5日 优先权日2011年9月5日
发明者梁俊, 俞高宇, 张晓华 申请人:上海可鲁系统软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1