CN106230992B - 一种负载均衡方法和负载均衡节点 - Google Patents

一种负载均衡方法和负载均衡节点 Download PDF

Info

Publication number
CN106230992B
CN106230992B CN201610861158.7A CN201610861158A CN106230992B CN 106230992 B CN106230992 B CN 106230992B CN 201610861158 A CN201610861158 A CN 201610861158A CN 106230992 B CN106230992 B CN 106230992B
Authority
CN
China
Prior art keywords
load balancing
node
message
request message
balancing node
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
Application number
CN201610861158.7A
Other languages
English (en)
Other versions
CN106230992A (zh
Inventor
李戈
祖立军
刘国宝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201610861158.7A priority Critical patent/CN106230992B/zh
Publication of CN106230992A publication Critical patent/CN106230992A/zh
Application granted granted Critical
Publication of CN106230992B publication Critical patent/CN106230992B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例涉及计算机网络技术领域,尤其涉及一种负载均衡方法和负载均衡节点,包括:第一级负载均衡节点根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;然后将所述请求报文的目的地址修改为第二级负载均衡节点的地址;最后将修改后的请求报文发送给第二级负载均衡节点,以使第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。因此,能够将客户端的访问请求快速的分配给应用服务器进行处理,进而能够提升负载均衡的效率。

Description

一种负载均衡方法和负载均衡节点
技术领域
本发明实施例涉及计算机网络领域,尤其涉及一种负载均衡方法和负载均衡节点。
背景技术
随着计算机网络应用的普及,计算机网络用户的数量在不断膨胀,这对于应用服务提供商提出了更大的挑战:按照传统的方法使用单台应用服务器提供应用服务已经远远不能满足庞大的用户请求的需求,现在通常都会使用多台应用服务器向用户提供服务。但是,如何才能把所有的用户请求均衡地分布到后台应用服务器上,则是负载均衡需要解决的问题。
现有技术中,采用基于应用协议的七层负载均衡技术将所有的用户请求均衡地分配到后台应用服务器上,而由于基于应用协议的七层负载均衡在将用户的请求均衡的分配到后台应用服务器上比较耗时,因此,现有技术中基于应用协议的七层负载均衡技术将用户的访问请求分配给应用服务器处理的速度较慢,影响了负载均衡的效率。
发明内容
本发明实施例提供一种负载均衡方法和负载均衡节点,用以通过提高将用户的访问请求分配给服务器处理的速度,从而提升负载均衡的效率。
本发明实施例提供一种负载均衡方法,包括:
第一级负载均衡节点根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;
所述第一级负载均衡节点将所述请求报文的目的地址修改为所述第二级负载均衡节点的地址;
所述第一级负载均衡节点将修改后的请求报文发送给所述第二级负载均衡节点,以使所述第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
较佳的,还包括:
所述第一级负载均衡节点周期接收检测服务器发送的用于检测负载均衡节点存活的第一检测消息;
若所述第一级负载均衡节点在周期内未接收到所述第一检测消息,则向所述检测服务器发送响应失败消息,以使所述检测服务器向负载量最小的第二级负载均衡节点发送配置消息,所述配置消息中包含有所述第一级负载均衡节点的配置参数和所述第一负载均衡策略。
较佳的,所述第一级负载均衡节点将修改后的请求报文发送给所述第二级负载均衡节点之后,还包括:
所述第一级负载均衡节点通过所述第二级负载均衡节点接收所述应用服务器的响应报文,并将所述响应报文发送给所述客户端。
本发明实施例还提供一种负载均衡方法,包括:
第二级负载均衡节点接收中转请求报文,所述中转请求报文是第一级负载均衡节点将收到的请求报文的目的地址修改为根据第一负载均衡策略确定的第二级负载均衡节点的地址后发送的;
所述第二级负载均衡节点根据第二负载均衡策略确定应用服务器;
所述第二级负载均衡节点将接收到的中转请求报文发送给确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
较佳的,还包括:
所述第二级负载均衡节点在接收到检测服务器发送的配置消息后,根据所述配置消息进行配置,以使所述第二级负载均衡节点变更为第一级负载均衡节点,所述配置消息是所述检测服务器在接收到所述第一级负载均衡节点发送的响应失败消息后发送的,所述配置消息中包含有第一级负载均衡节点的配置参数和第一负载均衡策略。
较佳的,还包括:
所述第二级负载均衡节点周期接收检测服务器发送的用于检测负载均衡节点存活的第二检测消息;
若所述第二级负载均衡节点在周期内未接收到所述第二检测消息,则确定所述第二级负载均衡节点失效。
本发明实施例还提供一种负载均衡节点,包括:
第一接收模块,用于根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;
处理模块,用于将所述请求报文的目的地址修改为所述第二级负载均衡节点的地址;
第一发送模块,用于将修改后的请求报文发送给所述第二级负载均衡节点,以使所述第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
较佳的,所述第一接收模块,还用于:
周期接收检测服务器发送的用于检测负载均衡节点存活的第一检测消息;
若在周期内未接收到所述第一检测消息,则指示所述第一发送模块向所述检测服务器发送响应失败消息,以使所述检测服务器向负载量最小的第二级负载均衡节点发送配置消息,所述配置消息中包含有所述负载均衡节点的配置参数和所述第一负载均衡策略。
较佳的,所述第一接收模块,还用于:
在将修改后的请求报文发送给所述第二级负载均衡节点之后,通过所述第二级负载均衡节点接收所述应用服务器的响应报文,并指示所述第一发送模块将所述响应报文发送给所述客户端。
本发明实施例还提供一种负载均衡节点,包括:
第二接收模块,用于接收中转请求报文,所述中转请求报文是第一级负载均衡节点将收到的请求报文的目的地址修改为根据第一负载均衡策略确定的第二级负载均衡节点的地址后发送的;
确定模块,用于根据第二负载均衡策略确定应用服务器;
第二发送模块,用于将接收到的中转请求报文发送给确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
较佳的,所述确定模块,还用于:
在接收到检测服务器发送的配置消息后,根据所述配置消息进行配置,以使所述负载均衡节点变更为第一级负载均衡节点,所述配置消息是所述检测服务器在接收到所述第一级负载均衡节点发送的响应失败消息后发送的,所述配置消息中包含有第一级负载均衡节点的配置参数和第一负载均衡策略。
较佳的,所述第二接收模块,还用于:
周期接收检测服务器发送的用于检测负载均衡节点存活的第二检测消息;若在周期内未接收到所述第二检测消息,则确定所述负载均衡节点失效。
上述实施例提供的负载均衡方法和负载均衡节点,包括:首先,第一级负载均衡节点根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;然后,第一级负载均衡节点将所述请求报文的目的地址修改为所述第二级负载均衡节点的地址;最后,第一级负载均衡节点将修改后的请求报文发送给所述第二级负载均衡节点,以使所述第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。可以看出,通过将负载均衡节点分为第一级负载均衡节点和第二级负载均衡节点,并且第一级负载均衡节点根据第一负载均衡策略对收到的客户端的请求报文进行修改,并将修改后的请求报文发送至第二级负载均衡节点,由第二级负载均衡节点将接收到的修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器,由于第一负载均衡策略对请求报文的解析长度小于第二负载均衡策略对请求报文的解析长度,因此,第一级负载均衡节点在接收到客户端的请求报文后,能够快速的将客户端的请求报文发送给第二级负载均衡节点,由第二级负载均衡节点将请求报文发送给应用服务器,从而能够将客户端的访问请求快速的分配给应用服务器进行处理,进而能够提升负载均衡的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为本发明实施例提供的一种负载均衡系统架构示意图;
图2为本发明实施例提供的一种负载均衡方法流程示意图;
图3为本发明实施例提供的另一种负载均衡方法的流程示意图;
图4为本发明实施例提供的另一种负载均衡系统架构示意图;
图5为本发明实施例提供的一种负载均衡节点的结构示意图;
图6为本发明实施例提供的另一种负载均衡节点结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1示例性示出了本发明实施例适用的一种负载均衡系统架构示意图,如图1所示,本发明实施例适用的负载均衡系统架构可包括:客户端101、第一级负载均衡节点102、第二级负载均衡节点103、应用服务器104。其中,客户端101、第一级负载均衡节点102、第二级负载均衡节点103、应用服务器104之间的交互过程如下:
客户端101通过网络向第一级负载均衡节点102发送请求报文,第一级负载均衡节点102在接收到客户端101发送的请求报文后,根据第一负载均衡策略,确定该请求报文对应的第二级负载均衡节点103,然后第一级负载均衡节点102将接收的请求报文的目的地址修改为确定的第二级负载均衡节点103的地址,最后第一级负载均衡节点102将修改后的请求报文通过网络发送给第二级负载均衡节点103,第二级负载均衡节点103在从第一级负载均衡节点102接收到修改后的请求报文后,根据第二负载均衡策略,确定修改后的请求报文对应的应用服务器104,之后第二级负载均衡节点103将修改后的请求报文通过网络发送至确定的修改后的请求报文所对应的应用服务器104。
应用服务器104在接收到第二级负载均衡节点103发送的修改后的请求报文后对该修改后的请求报文进行响应,应用服务器104在第二级负载均衡节点103发送的修改后的请求报文进行响应后,应用服务器104可将响应报文通过网络直接发送给客户端101,应用服务器104也可将响应报文通过网络发送给第二级负载均衡节点103,由第二级负载均衡节点103通过网络将所述响应报文发送至第一级负载均衡节点102,然后第一级负载均衡节点102通过网络将所述响应报文发送至客户端101。
基于图1所示的负载均衡系统架构的基础上,本发明实施例提供一种负载均衡方法。
图2示例性示出了本发明实施例提供的一种负载均衡方法的流程示意图,如图2所示,该流程可包括:
S201、第一级负载均衡节点根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点。
S202、第一级负载均衡节点将请求报文的目的地址修改为第二级负载均衡节点的地址。
S203、第一级负载均衡节点将修改后的请求报文发送给第二级负载均衡节点,以使第二级负载均衡节点将修改后的请求报文发送给第二负载均衡策略确定的应用服务器。
其中,第一负载均衡策略对请求报文的解析长度小于第二负载均衡策略对请求报文的解析长度。
第一负载均衡策略可以是基于IP(IP Address,互联网协议地址)所确定的负载均衡策略,第一负载均衡策略也可以是基于MAC(Media Access Control,硬件地址)所确定的负载均衡策略,第一负载均衡策略还可以是基于DNS(Domain Name System,域名系统)所确定的负载均衡策略。第二负载均衡策略可以是基于HTTP(Hypertext Transfer Protocol,超文本传送协议)所确定的负载均衡策略,第二负载均衡策略也可以是基于IP(IPAddress,互联网协议地址)所确定的负载均衡策略,第二负载均衡策略还可以是基于DNS(Domain Name System,域名系统)所确定的负载均衡策略。
在具体实施时,只要保证第一负载均衡策略对请求报文的解析长度小于第二负载均衡策略对请求报文的解析长度即可。例如,当第一负载均衡策略是基于MAC(MediaAccess Control,硬件地址)所确定的负载均衡策略时,第二负载均衡策略可以是基于HTTP(Hypertext Transfer Protocol,超文本传送协议)所确定的负载均衡策略;当第一负载均衡策略是基于MAC(Media Access Control,硬件地址)所确定的负载均衡策略时,第二负载均衡策略也可以是基于IP(IP Address,互联网协议地址)所确定的负载均衡策略;当第一负载均衡策略是基于MAC(Media Access Control,硬件地址)所确定的负载均衡策略时,第二负载均衡策略还可以是基于DNS(Domain Name System,域名系统)所确定的负载均衡策略。
为了在第一级负载均衡节点失效的情况下,不影响负载均衡系统的正常使用,本发明实施例所适用的负载均衡系统还可包括检测服务器,该检测服务器可周期性的向第一级负载均衡节点发送用于检测负载均衡节点存活的第一检测消息,若第一级负载均衡节点在周期内未接收到第一检测消息,则可向检测服务器发送响应失败消息,检测服务器在接收到第一级负载均衡节点发送的响应失败消息后,检测服务器可确定该第一级负载均衡节点失效。检测服务器在确定该第一级负载均衡节点失效,可通过回调函数获取当前每个第二级负载均衡节点的负载情况,根据当前各个第二级负载均衡节点的负载情况,确定负载量最小的第二级负载均衡节点,在确定负载量最小的第二级负载均衡节点后,检测服务器可向负载量最小的第二级负载均衡节点发送配置消息,负载量最小的第二级负载均衡节点在接收到检测服务器发送的配置消息后,根据该配置消息升级为第一级负载均衡节点,即负载量最小的第二级负载均衡节点在接收到检测服务器发送的配置消息后,可根据该配置消息接管为失效的第一级负载均衡节点的负载任务,其中,所述配置消息中包含有第一级负载均衡节点的配置参数和第一负载均衡策略。
基于图1所示的负载均衡系统架构的基础上,本发明实施例还提供另一种负载均衡方法。
图3示例性示出了本发明实施例提供的另一种负载均衡方法的流程示意图,如图3所示,该流程可包括:
S301、第二级负载均衡节点接收中转请求报文,所述中转请求报文是第一级负载均衡节点将收到的请求报文的目的地址修改为根据第一负载均衡策略确定的第二级负载均衡节点的地址后发送的。
S302、第二级负载均衡节点根据第二负载均衡策略确定应用服务器。
S303、第二级负载均衡节点将接收到的的中转请求报文发送给确定的应用服务器。
其中,第一负载均衡策略对请求报文的解析长度小于第二负载均衡策略对请求报文的解析长度。
为了在第二级负载均衡节点失效的情况下,不影响负载均衡系统的正常使用,检测服务器可周期性的向第二级负载均衡节点发送用于检测负载均衡节点存活的第二检测消息,若第二级负载均衡节点在周期内未接收到第二检测消息,则可向检测服务器发送响应失败消息,检测服务器在接收到第二级负载均衡节点发送的响应失败消息后,检测服务器可确定该第二级负载均衡节点失效。检测服务器在确定该第二级负载均衡节点失效后,可向第一级负载均衡节点发送通知消息,第一级负载均衡节点在接收到检测服务器发送的通知消息后,可根据该通知消息,不再将修改后请求报文发送给失效的第二级负载均衡节点。
下面通过几个具体的例子对上述的方法流程进行详细的解释说明,下面的几个例子所适用的系统架构可如图4所示。
从图4中可以看出,第一级负载均衡节点为负载均衡服务器42,第二级负载均衡节点为负载均衡服务器431和负载均衡服务器432,应用服务器包括应用服务器441、应用服务器442、应用服务器443和应用服务器444。
进一步假设,第一级负载均衡节点负载均衡服务器42的IP地址为:20.20.20.20;第二级负载均衡节点负载均衡服务器431的IP地址为:192.168.1.2,第二级负载均衡节点负载均衡服务器432的IP地址为:192.168.2.2。应用服务器441的IP地址为:192.168.1.10,应用服务器442的IP地址为:192.168.1.11,应用服务器443的IP地址为:192.168.2.10,应用服务器444的IP地址为:192.168.2.11。继续假设第一负载均衡策略是基于IP地址所确定的负载均衡策略,第二负载均衡策略是基于HTTP协议所确定的负载均衡策略。
例一
基于上述图4所示的系统架构的基础上,进一步假设,访问客户端41向负载均衡服务器42发送的请求数据包1中携带的部分信息为:“源IP地址为:“10.10.10.10”,目的IP地址为:“20.20.20.20”,https://member.unionpay.com”,则负载均衡服务器42在接收到访问客户端41发送的请求数据包1后,可基于请求数据包1中携带的源IP地址“10.10.10.10”和目的IP地址“20.20.20.20”根据第一负载均衡策略确定第二级负载均衡节点,假设负载均衡服务器42基于请求数据包1中携带的源IP地址“10.10.10.10”和目的IP地址“20.20.20.20”根据第一负载均衡策略所确定的第二级负载均衡节点为负载均衡服务器431,则负载均衡服务器42可将请求数据包1中的目的IP地址“20.20.20.20”修改为“192.168.1.2”,负载均衡服务器42在将请求数据包1中的目的IP地址“20.20.20.20”修改为“192.168.1.2”后,可将修改后的请求数据包1发送给负载均衡服务器431,此时,修改后的请求数据包1中携带的部分信息为“源IP地址:“10.10.10.10”,目的IP地址为:“192.168.1.2”,https://member.unionpay.com”,负载均衡服务器431在接收到负载均衡服务器42发送的修改后的请求数据包1后,可基于修改后的请求数据包1中携带的“https://member.unionpay.com”根据第二负载均衡策略确定应用服务器,假设负载均衡服务器431基于请求数据包1中携带的“https://member.unionpay.com”根据第二负载均衡策略所确定的应用服务器为应用服务器441,则负载均衡服务器431可将接收到的请求数据包1中的目的IP地址“192.168.1.2”修改为“192.168.1.10”,在负载均衡服务器431将接收到的请求数据包1中的目的IP地址“192.168.1.2”修改为“192.168.1.10”后,负载均衡服务器431可将修改后的请求数据包1发送给应用服务器441,由应用服务器441对接收到的请求数据包1进行处理,应用服务器441在对接收到的请求数据包1进行处理后,可将响应报文根据请求数据包1中携带的源IP地址“10.10.10.10”直接发送给访问客户端41。
例二
基于上述图4所示的系统架构的基础上,进一步假设,访问客户端41向负载均衡服务器42发送的请求数据包2中携带的部分信息为:“源IP地址为:“10.10.10.10”,目的IP地址为:“20.20.20.20”,https://cn.unionpay.com/thirdpart_org/list_thirdpart_org.html”,则负载均衡服务器42在接收到访问客户端41发送的请求数据包2后,可基于请求数据包2中携带的源IP地址“10.10.10.10”和目的IP地址“20.20.20.20”根据第一负载均衡策略确定第二级负载均衡节点,假设负载均衡服务器42基于请求数据包2中携带的源IP地址“10.10.10.10”和目的IP地址“20.20.20.20”根据第一负载均衡策略所确定的第二级负载均衡节点为负载均衡服务器431,则负载均衡服务器42可将请求数据包1中的目的IP地址“20.20.20.20”修改为“192.168.1.2”,负载均衡服务器42在将请求数据包2中的目的IP地址“20.20.20.20”修改为“192.168.1.2”后,可将修改后的请求数据包2发送给负载均衡服务器431,此时,修改后的请求数据包2中携带的部分信息为“源IP地址:“10.10.10.10”,目的IP地址为:“192.168.1.2”,https://cn.unionpay.com/thirdpart_org/list_thirdpart_org.html”,负载均衡服务器431在接收到负载均衡服务器42发送的修改后的请求数据包2后,可基于修改后的请求数据包1中携带的“https://cn.unionpay.com/thirdpart_org/list_thirdpart_org.html”根据第二负载均衡策略确定应用服务器,假设负载均衡服务器431基于请求数据包1中携带的“https://cn.unionpay.com/thirdpart_org/list_thirdpart_org.html”根据第二负载均衡策略所确定的应用服务器为应用服务器442,则负载均衡服务器431可将接收到的请求数据包2中的目的IP地址“192.168.1.2”修改为“192.168.1.11”,在负载均衡服务器431将接收到的请求数据包2中的目的IP地址“192.168.1.2”修改为“192.168.1.11”后,负载均衡服务器431可将修改后的请求数据包2发送给应用服务器442,由应用服务器442对接收到的请求数据包1进行处理,应用服务器442在对接收到的请求数据包2进行处理后,可将响应报文根据请求数据包2中携带的源IP地址“10.10.10.10”直接发送给访问客户端41。
从上述例一和例二中可以看出,数据包1和数据包2中携带的源IP地址和目的IP地址相同,所以数据包1和数据包2基于第一负载均衡策略被发送到相同的第二级负载均衡服务器,但由于数据包1携带的应用层内容与数据包2携带的不同,因此数据包1基于第二负载均衡策略被发送到应用服务器441,数据包1基于第二负载均衡策略被发送到应用服务器442。
例三
基于上述图4所示的系统架构的基础上,进一步假设,访问客户端41向负载均衡服务器42发送的请求数据包3中携带的部分信息为:“源IP地址为:“30.30.30.30”,目的IP地址为:“20.20.20.20”,http://blog.csdn.net/cywosp/article/details/38017027”,则负载均衡服务器42在接收到访问客户端41发送的请求数据包3后,可基于请求数据包3中携带的源IP地址“30.30.30.30”和目的IP地址“20.20.20.20”根据第一负载均衡策略确定第二级负载均衡节点,假设负载均衡服务器42基于请求数据包3中携带的源IP地址“30.30.30.30”和目的IP地址“20.20.20.20”根据第一负载均衡策略所确定的第二级负载均衡节点为负载均衡服务器432,则负载均衡服务器42可将请求数据包3中的目的IP地址“20.20.20.20”修改为“192.168.2.2”,负载均衡服务器42在将请求数据包3中的目的IP地址“20.20.20.20”修改为“192.168.2.2”后,可将修改后的请求数据包3发送给负载均衡服务器432,此时,修改后的请求数据包3中携带的部分信息为“源IP地址:“30.30.30.30”,目的IP地址为:“192.168.1.2”,http://blog.csdn.net/cywosp/article/details/38017027”,负载均衡服务器433在接收到负载均衡服务器42发送的修改后的请求数据包3后,可基于修改后的请求数据包3中携带的“http://blog.csdn.net/cywosp/article/details/38017027”根据第二负载均衡策略确定应用服务器,假设负载均衡服务器433基于请求数据包3中携带的“http://blog.csdn.net/cywosp/article/details/38017027”根据第二负载均衡策略所确定的应用服务器为应用服务器444,则负载均衡服务器432可将接收到的请求数据包3中的目的IP地址“192.168.2.2”修改为“192.168.2.11”,在负载均衡服务器432将接收到的请求数据包3中的目的IP地址“192.168.2.2”修改为“192.168.2.11”后,负载均衡服务器432可将修改后的请求数据包3发送给应用服务器444,由应用服务器444对接收到的请求数据包3进行处理,应用服务器444在对接收到的请求数据包3进行处理后,可将响应报文根据请求数据包3中携带的源IP地址“30.30.30.30”直接发送给访问客户端41。
从上述例一、例二、例三中可以看出,数据包1和数据包2中携带的源IP地址和目的IP地址相同,所以数据包1和数据包2基于第一负载均衡策略被发送到相同的第二级负载均衡服务器,尽管数据包3中携带的目的IP地址与数据包1和数据包2中携带的目的IP地址相同,但由于数据包3中携带的源IP地址与数据包1和数据包2中携带的源IP地址不同,因此数据包3基于第一负载均衡策略被发送到另外一个第二级负载均衡服务器。
根据以上内容可以看出,通过将负载均衡节点分为第一级负载均衡节点和第二级负载均衡节点,并且第一级负载均衡节点根据第一负载均衡策略对收到的客户端的请求报文进行修改,并将修改后的请求报文发送至第二级负载均衡节点,由第二级负载均衡节点将接收到的修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器,由于第一负载均衡策略对请求报文的解析长度小于第二负载均衡策略对请求报文的解析长度,因此,第一级负载均衡节点在接收到客户端的请求报文后,能够快速的将客户端的请求报文发送给第二级负载均衡节点,由第二级负载均衡节点将请求报文发送给应用服务器,从而能够将客户端的访问请求快速的分配给应用服务器进行处理,进而能够提升负载均衡的效率。
基于的相同技术构思,本发明实施例提供一种负载均衡节点,如图5所示,该负载均衡节点可包括:
第一接收模块501,用于根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;
处理模块502,用于将所述请求报文的目的地址修改为所述第二级负载均衡节点的地址;
第一发送模块503,用于将修改后的请求报文发送给所述第二级负载均衡节点,以使所述第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
较佳的,第一接收模块501,还用于:
周期接收检测服务器发送的用于检测负载均衡节点存活的第一检测消息;
若在周期内未接收到所述第一检测消息,则指示所述第一发送模块向所述检测服务器发送响应失败消息,以使所述检测服务器向负载量最小的第二级负载均衡节点发送配置消息,所述配置消息中包含有所述负载均衡节点的配置参数和所述第一负载均衡策略。
较佳的,第一接收模块501,还用于:
在将修改后的请求报文发送给所述第二级负载均衡节点之后,通过所述第二级负载均衡节点接收所述应用服务器的响应报文,并指示所述第一发送模块将所述响应报文发送给所述客户端。
本发明实施例还提供另一种负载均衡节点,如图6所示,该负载均衡节点可包括:
第二接收模块601,用于接收中转请求报文,所述中转请求报文是第一级负载均衡节点将收到的请求报文的目的地址修改为根据第一负载均衡策略确定的第二级负载均衡节点的地址后发送的;
确定模块602,用于根据第二负载均衡策略确定应用服务器;
第二发送模块603,用于将接收到的中转请求报文发送给确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
较佳的,确定模块602,还用于:
在接收到检测服务器发送的配置消息后,根据所述配置消息进行配置,以使所述负载均衡节点变更为第一级负载均衡节点,所述配置消息是所述检测服务器在接收到所述第一级负载均衡节点发送的响应失败消息后发送的,所述配置消息中包含有第一级负载均衡节点的配置参数和第一负载均衡策略。
较佳的,第二接收模块601,还用于:
周期接收检测服务器发送的用于检测负载均衡节点存活的第二检测消息;
若在周期内未接收到所述第二检测消息,则确定所述负载均衡节点失效。
综上,可以看出,通过将负载均衡节点分为第一级负载均衡节点和第二级负载均衡节点,并且第一级负载均衡节点根据第一负载均衡策略对收到的客户端的请求报文进行修改,并将修改后的请求报文发送至第二级负载均衡节点,由第二级负载均衡节点将接收到的修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器,由于第一负载均衡策略对请求报文的解析长度小于第二负载均衡策略对请求报文的解析长度,因此,第一级负载均衡节点在接收到客户端的请求报文后,能够快速的将客户端的请求报文发送给第二级负载均衡节点,由第二级负载均衡节点将请求报文发送给应用服务器,从而能够将客户端的访问请求快速的分配给应用服务器进行处理,进而能够提升负载均衡的效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种负载均衡方法,其特征在于,包括:
第一级负载均衡节点根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;
所述第一级负载均衡节点将所述请求报文的目的地址修改为所述第二级负载均衡节点的地址;
所述第一级负载均衡节点将修改后的请求报文发送给所述第二级负载均衡节点,以使所述第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
2.如权利要求1所述的方法,其特征在于,还包括:
所述第一级负载均衡节点周期接收检测服务器发送的用于检测负载均衡节点存活的第一检测消息;
若所述第一级负载均衡节点在周期内未接收到所述第一检测消息,则向所述检测服务器发送响应失败消息,以使所述检测服务器向负载量最小的第二级负载均衡节点发送配置消息,所述配置消息中包含有所述第一级负载均衡节点的配置参数和所述第一负载均衡策略。
3.如权利要求1所述的方法,其特征在于,所述第一级负载均衡节点将修改后的请求报文发送给所述第二级负载均衡节点之后,还包括:
所述第一级负载均衡节点通过所述第二级负载均衡节点接收所述应用服务器的响应报文,并将所述响应报文发送给所述客户端。
4.一种负载均衡方法,其特征在于,包括:
第二级负载均衡节点接收中转请求报文,所述中转请求报文是第一级负载均衡节点将收到的请求报文的目的地址修改为根据第一负载均衡策略确定的第二级负载均衡节点的地址后发送的;
所述第二级负载均衡节点根据第二负载均衡策略确定应用服务器;
所述第二级负载均衡节点将接收到的中转请求报文发送给确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
5.如权利要求4所述的方法,其特征在于,还包括:
所述第二级负载均衡节点在接收到检测服务器发送的配置消息后,根据所述配置消息进行配置,以使所述第二级负载均衡节点变更为第一级负载均衡节点,所述配置消息是所述检测服务器在接收到所述第一级负载均衡节点发送的响应失败消息后发送的,所述配置消息中包含有第一级负载均衡节点的配置参数和第一负载均衡策略。
6.如权利要求4所述的方法,其特征在于,还包括:
所述第二级负载均衡节点周期接收检测服务器发送的用于检测负载均衡节点存活的第二检测消息;
若所述第二级负载均衡节点在周期内未接收到所述第二检测消息,则确定所述第二级负载均衡节点失效。
7.一种第一级负载均衡节点,其特征在于,包括:
第一接收模块,用于根据第一负载均衡策略,确定收到的客户端的请求报文对应的第二级负载均衡节点;
处理模块,用于将所述请求报文的目的地址修改为所述第二级负载均衡节点的地址;
第一发送模块,用于将修改后的请求报文发送给所述第二级负载均衡节点,以使所述第二级负载均衡节点将修改后的请求报文发送给根据第二负载均衡策略确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
8.如权利要求7所述的第一级负载均衡节点,其特征在于,所述第一接收模块,还用于:
周期接收检测服务器发送的用于检测负载均衡节点存活的第一检测消息;
若在周期内未接收到所述第一检测消息,则指示所述第一发送模块向所述检测服务器发送响应失败消息,以使所述检测服务器向负载量最小的第二级负载均衡节点发送配置消息,所述配置消息中包含有所述第一级负载均衡节点的配置参数和所述第一负载均衡策略。
9.如权利要求7所述的第一级负载均衡节点,其特征在于,所述第一接收模块,还用于:
在将修改后的请求报文发送给所述第二级负载均衡节点之后,通过所述第二级负载均衡节点接收所述应用服务器的响应报文,并指示所述第一发送模块将所述响应报文发送给所述客户端。
10.一种第二级负载均衡节点,其特征在于,包括:
第二接收模块,用于接收中转请求报文,所述中转请求报文是第一级负载均衡节点将收到的请求报文的目的地址修改为根据第一负载均衡策略确定的第二级负载均衡节点的地址后发送的;
确定模块,用于根据第二负载均衡策略确定应用服务器;
第二发送模块,用于将接收到的中转请求报文发送给确定的应用服务器;
其中,所述第一负载均衡策略对所述请求报文的解析长度小于所述第二负载均衡策略对所述请求报文的解析长度。
11.如权利要求10所述的第二级负载均衡节点,其特征在于,所述确定模块,还用于:
在接收到检测服务器发送的配置消息后,根据所述配置消息进行配置,以使所述第二级负载均衡节点变更为第一级负载均衡节点,所述配置消息是所述检测服务器在接收到所述第一级负载均衡节点发送的响应失败消息后发送的,所述配置消息中包含有第一级负载均衡节点的配置参数和第一负载均衡策略。
12.如权利要求10所述的第二级负载均衡节点,其特征在于,所述第二接收模块,还用于:
周期接收检测服务器发送的用于检测负载均衡节点存活的第二检测消息;
若在周期内未接收到所述第二检测消息,则确定所述负载均衡节点失效。
CN201610861158.7A 2016-09-28 2016-09-28 一种负载均衡方法和负载均衡节点 Active CN106230992B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610861158.7A CN106230992B (zh) 2016-09-28 2016-09-28 一种负载均衡方法和负载均衡节点

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610861158.7A CN106230992B (zh) 2016-09-28 2016-09-28 一种负载均衡方法和负载均衡节点

Publications (2)

Publication Number Publication Date
CN106230992A CN106230992A (zh) 2016-12-14
CN106230992B true CN106230992B (zh) 2019-04-26

Family

ID=58075790

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610861158.7A Active CN106230992B (zh) 2016-09-28 2016-09-28 一种负载均衡方法和负载均衡节点

Country Status (1)

Country Link
CN (1) CN106230992B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109040236A (zh) * 2018-08-01 2018-12-18 平安科技(深圳)有限公司 一种服务器接入方法及网络系统
CN112751897B (zh) * 2019-10-31 2022-08-26 贵州白山云科技股份有限公司 负载均衡方法、装置、介质及设备
CN112910942B (zh) * 2019-12-03 2024-05-24 华为技术有限公司 一种服务处理方法及相关装置
CN112445774A (zh) * 2020-11-20 2021-03-05 网宿科技股份有限公司 一种分布式共享文件系统及其数据处理方法
CN113141400B (zh) * 2021-04-14 2023-04-07 网宿科技股份有限公司 一种网络服务的访问方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523302A (zh) * 2011-12-26 2012-06-27 成都市华为赛门铁克科技有限公司 虚拟机集群的负载均衡方法、服务器及系统
CN103166870A (zh) * 2011-12-13 2013-06-19 百度在线网络技术(北京)有限公司 负载均衡集群系统及采用其提供服务的方法
CN103428229A (zh) * 2012-05-14 2013-12-04 百度在线网络技术(北京)有限公司 数据中心系统、装置及提供服务的方法
WO2014023003A1 (zh) * 2012-08-09 2014-02-13 华为技术有限公司 控制数据传输的方法、装置和系统
CN105282191A (zh) * 2014-06-20 2016-01-27 中国电信股份有限公司 负载均衡系统、控制器和方法
CN105939371A (zh) * 2015-11-24 2016-09-14 中国银联股份有限公司 云计算的负载均衡方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103166870A (zh) * 2011-12-13 2013-06-19 百度在线网络技术(北京)有限公司 负载均衡集群系统及采用其提供服务的方法
CN102523302A (zh) * 2011-12-26 2012-06-27 成都市华为赛门铁克科技有限公司 虚拟机集群的负载均衡方法、服务器及系统
CN103428229A (zh) * 2012-05-14 2013-12-04 百度在线网络技术(北京)有限公司 数据中心系统、装置及提供服务的方法
WO2014023003A1 (zh) * 2012-08-09 2014-02-13 华为技术有限公司 控制数据传输的方法、装置和系统
CN105282191A (zh) * 2014-06-20 2016-01-27 中国电信股份有限公司 负载均衡系统、控制器和方法
CN105939371A (zh) * 2015-11-24 2016-09-14 中国银联股份有限公司 云计算的负载均衡方法及系统

Also Published As

Publication number Publication date
CN106230992A (zh) 2016-12-14

Similar Documents

Publication Publication Date Title
CN106230992B (zh) 一种负载均衡方法和负载均衡节点
US10812381B2 (en) Systems and methods for directly responding to distributed network traffic
EP2647174B1 (en) System and method to distribute application traffic to servers based on dynamic service response time
CN109274707A (zh) 一种负载调度方法及装置
EP2825970B1 (en) Apparatus and method for managing content for cloud computing
US20170171344A1 (en) Scheduling method and server for content delivery network service node
US8095935B2 (en) Adapting message delivery assignments with hashing and mapping techniques
CN109981716A (zh) 一种微服务调用方法及装置
US8843630B1 (en) Decentralized request routing
CN108173937A (zh) 访问控制方法和装置
CN104158758A (zh) Sdn网络基于用户报文时间反馈的负载均衡处理方法及系统
CN102918813A (zh) 用于数据负载均衡的设备和方法
US10826981B2 (en) Processing requests with updated routing information
EP2789147B1 (en) Method and apparatus for load balancing in communication system
CN106161552A (zh) 一种海量数据环境下负载均衡方法及系统
CN102215247B (zh) 网络就近性负载均衡方法及设备
CN102394931A (zh) 一种基于云的用户访问请求调度方法
Huang et al. Converged network-cloud service composition with end-to-end performance guarantee
CN106716937A (zh) 路径计算和访问请求分发方法、装置及系统
CN109818997A (zh) 一种负载均衡方法、系统及存储介质
CN107645520A (zh) 一种负载均衡方法、装置以及系统
CN110489238A (zh) 节点检测方法、装置、电子设备及存储介质
CN103401799A (zh) 负载均衡的实现方法和装置
CN110650209A (zh) 实现负载均衡的方法和装置
CN109962961A (zh) 一种内容分发网络cdn服务节点的重定向方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant