一种负载均衡的方法及负载均衡服务装置与流程

文档序号:19059701发布日期:2019-11-06 01:39阅读:133来源:国知局
一种负载均衡的方法及负载均衡服务装置与流程

本发明涉及数据处理技术领域,具体涉及一种负载均衡的方法及负载均衡服务装置。



背景技术:

随着互联网的快速发展,服务器逐渐应用于各个领域,为用户提供相应的服务。

在为用户提供服务的过程中,通常采用客户端与服务器直接相连的方式进行数据处理。但目前处于大数据时期,即数据呈爆炸性的形式增长,服务器在处理数据的过程中可能出现宕机等异常情况,从而无法进行数据处理,导致服务器的可用性低。



技术实现要素:

有鉴于此,本发明实施例提供一种负载均衡的方法及负载均衡服务装置,以解决目前服务器低可用的问题。

为实现上述目的,本发明实施例提供如下技术方案:

本发明实施例第一方面公开一种负载均衡的方法,适用于预先构建的负载均衡服务装置,所述负载均衡服务装置包括多台负载均衡服务器,每一所述负载均衡服务器连接多台后端真实服务器,所述方法包括:

负载均衡服务器接收客户端发送的数据处理请求和网络协议ip数据包,所述数据处理请求由所述客户端通过对应所述负载均衡服务器的虚拟网络协议vip和端口号发送的;

所述负载均衡服务器基于预设的流量分类规则,确定所述ip数据包的数据流量类别,并判断所述ip数据包是否符合所述数据流量类别的限流规则,所述流量分类规则基于所述负载均衡服务器的网卡带宽设置;

若所述ip数据包符合所述限流规则,所述负载均衡服务器基于预设调度规则从与其连接的多台后端真实服务器中确定指定的后端真实服务器,将所述ip数据包发送给所述指定的后端真实服务器;

所述指定的后端真实服务器判断所述ip数据包是否符合预设tbf限速规则;

若符合,所述指定的后端真实服务器对所述ip数据包进行处理,将处理结果反馈给所述客户端。

优选的,所述预先构建负载均衡服务装置的过程,包括:

负载均衡服务器接收第一构建请求,第一构建请求至少包括:所述负载均衡服务器的vip、端口号、和与其连接的多台后端真实服务器的ip;

所述负载均衡服务器基于所述第一构建请求构建对应的虚拟服务器,以及构建与其连接的多台后端真实服务器和所述虚拟服务器的对应关系;

与所述负载均衡服务器对应的每一所述后端真实服务器接收第二构建请求,所述第二构建请求至少包括:所述负载均衡服务器的vip和所述后端真实服务器的端口号;

每一所述后端真实服务器基于所述第二构建请求,构建与对应所述负载均衡服务器的所述虚拟服务器的对应关系。

优选的,所述负载均衡服务器基于所述第一构建请求构建对应的虚拟服务器,以及构建与其连接的多台后端真实服务器和所述虚拟服务器的对应关系,包括:

所述负载均衡服务器确定是否存在预设的第一虚拟网卡;

若是,所述负载均衡服务器将所述vip绑定到所述第一虚拟网卡上,构建虚拟服务器;

若否,所述负载均衡服务器创建所述第一虚拟网卡,并将所述vip绑定到所述第一虚拟网卡上,构建虚拟服务器;

所述负载均衡服务器将与其连接的每一所述后端真实服务器的ip添加到所述虚拟服务器。

优选的,所述负载均衡服务器基于预设的流量分类规则,确定所述ip数据包的数据流量类别,并判断所述ip数据包是否符合所述数据流量类别的限流规则,包括:

所述负载均衡服务器判断是否存在与所述ip数据包匹配的过滤器,每一数据流量类别对应一个过滤器;

若存在,获取与所述ip数据包匹配的过滤器对应的第一数据流量类别,确定所述ip数据包的数据流量类别为所述第一数据流量类别;

若不存在,确定所述ip数据包的数据流量类别为默认的第二数据流量类别;

判断所述ip数据包是否符合自身对应的流量数据类型的限流规则;

若所述ip数据包不符合所述限流规则,删除所述ip数据包。

优选的,还包括:

针对所述负载均衡服务器对应的每一所述后端真实服务器,所述负载均衡服务器周期性确定所述后端真实服务器是否可用;

若不可用,将所述后端真实服务器对应的ip从所述虚拟服务器中删除;

若可用,确定所述虚拟服务器中是否存在所述后端真实服务器对应的ip;

若不存在,将所述后端真实服务器对应的ip添加至所述虚拟服务器中。

本发明实施例第二方面公开一种负载均衡服务装置,所述负载均衡服务装置包括:多台负载均衡服务器,每一所述负载均衡服务器连接多台后端真实服务器;

所述负载均衡服务器,用于接收客户端发送的数据处理请求和网络协议ip数据包,基于预设的流量分类规则,确定所述ip数据包的数据流量类别,并判断所述ip数据包是否符合所述数据流量类别的限流规则,若所述ip数据包符合所述限流规则,基于预设调度规则从与其连接的多台后端真实服务器中确定指定的后端真实服务器,将所述ip数据包发送给所述指定的后端真实服务器,所述数据处理请求由所述客户端通过对应所述负载均衡服务器的虚拟网络协议vip和端口号发送的,所述流量分类规则基于所述负载均衡服务器的网卡带宽设置;

所述指定的后端真实服务器,用于判断所述ip数据包是否符合预设tbf限速规则,若符合,对所述ip数据包进行处理,将处理结果反馈给所述客户端。

优选的,还包括:

所述负载均衡服务器还用于:接收第一构建请求,并基于所述第一构建请求构建对应的虚拟服务器,以及构建与其连接的多台后端真实服务器和所述虚拟服务器的对应关系,第一构建请求至少包括:所述负载均衡服务器的vip、端口号、和与其连接的多台后端真实服务器的ip;

与所述负载均衡服务器对应的每一所述后端真实服务器,还用于接收第二构建请求,基于所述第二构建请求,构建与对应所述负载均衡服务器的所述虚拟服务器的对应关系。

优选的,所述负载均衡服务器包括:

判断单元,用于确定是否存在预设的第一虚拟网卡,若是,执行构建单元,若否,执行创建单元;

所述构建单元,用于将所述vip绑定到所述第一虚拟网卡上,构建虚拟服务器;

所述创建单元,用于创建所述第一虚拟网卡,并执行所述绑定单元;

添加单元,用于将与所述负载均衡服务器连接的每一所述后端真实服务器的ip添加到所述虚拟服务器。

本发明实施例第三方面公开一种电子设备,所述电子设备用于运行程序,其中,所述程序运行时执行如本发明实施例第一方面公开的负载均衡的方法。

本发明实施例第四方面公开一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如本发明实施例第一方面公开的负载均衡的方法。

基于上述本发明实施例提供的一种负载均衡的方法及负载均衡服务装置,该方法为:负载均衡服务器接收客户端发送的数据处理请求和ip数据包,基于预设的流量分类规则,确定ip数据包的数据流量类别,并判断ip数据包是否符合数据流量类别的限流规则,若符合,从与其连接的多台后端真实服务器中确定指定的后端真实服务器,将ip数据包发送给该后端真实服务器;指定的后端真实服务器判断ip数据包是否符合预设tbf限速规则,若符合,对ip数据包进行处理,将处理结果反馈给客户端。本方案中,利用虚拟服务器对外提供对应的vip和端口号。客户端通过负载均衡服务器对应的vip和端口号发送数据处理请求和ip数据包,虚拟服务器根据预设调度规则选择指定的后端真实服务器,将ip数据包发送给该后端真实服务器进行数据处理,为各个后端真实服务器提供负载均衡服务,同时对ip数据包进行限流和限速,实现后端真实服务器高可用。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的负载均衡服务装置的架构示意图;

图2为本发明实施例提供的一种负载均衡的方法的流程图;

图3为本发明实施例提供的设置数据流量分类的示意图;

图4为本发明实施例提供的后端真实服务器处理ip数据包的示意图;

图5为本发明实施例提供的确定后端真实服务器是否可用的流程图;

图6为本发明实施例提供的构建负载均衡服务装置的流程图;

图7为本发明实施例提供的负载均衡服务器处理ip数据包的流程图;

图8为本发明实施例提供的一种负载均衡服务装置的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

由背景技术可知,目前数据呈爆炸性的形式增长,服务器在处理数据的过程中可能出现宕机等异常情况,从而无法进行数据处理,导致服务器的可用性低,存在服务器低可用的问题。

因此,本发明实施例提供一种负载均衡的方法及负载均衡服务装置,预先构建负载均衡服务装置;负载均衡服务器接收客户端发送的数据处理请求和ip数据包,并基于预设调度规则从与其连接的多台后端真实服务器中确定指定的后端真实服务器,将ip数据包发送给该后端真实服务器;指定的后端真实服务器对ip数据包进行处理,将处理结果反馈给客户端,以实现后端真实服务器高可用。

本发明实施例涉及的负载均衡服务装置包括多台负载均衡服务器,每一所述负载均衡服务器连接多台后端真实服务器。预先在每台所述负载均衡服务器中部署lvs(linuxvirtualserver,lvs)环境和开放最短路径优先(openshortestpathfirst,ospf)环境,每台所述负载均衡服务器通过qugga进行ospf路由广播。为更好解释说明所述负载均衡服务装置的结构,通过图1示出的负载均衡服务装置的架构示意图进行举例说明,需要说明的是,所述图1中的内容仅用于举例说明。

在所述图1中,预先构建一个4层负载均衡服务,通过所述4层负载均衡服务配置3台负载均衡服务器(loadbalanceserver,lbserver)的相关参数,每台所述负载均衡服务器与3台后端真实服务器连接。通过所述4层负载均衡服务配置每台所述后端真实服务器的相关参数,其中,vip为虚拟服务器的ip,rip为所述后端真实服务器的ip。

参见图2,示出了本发明实施例提供的一种负载均衡的方法的流程图,所述方法包括以下步骤:

步骤s201:负载均衡服务器接收客户端发送的数据处理请求和网络协议ip数据包。

需要说明的是,所述数据处理请求由所述客户端通过对应所述负载均衡服务器的vip(virtualip,vip)和端口号发送的。

在具体实现步骤s201的过程中,所述客户端向对应的vip和端口号发送传输控制协议(transmissioncontrolprotocol,tcp)请求或者用户数据报协议(userdatagramprotocol,udp)请求,即前述的数据处理请求。由前述内容可知,每台所述负载均衡服务器中都部署qugga环境,交换机根据最短路由算法将所述客户端发送的所述数据处理请求转发给最近的负载均衡服务器。

步骤s202:所述负载均衡服务器基于预设的流量分类规则,确定所述ip数据包的数据流量类别。

在具体实现步骤s202的过程中,所述流量分类规则基于所述负载均衡服务器的网卡带宽设置。结合图3示出的设置数据流量分类的示意图,具体设置过程如过程a1-a3所示:

假设每台所述负载均衡服务器中,网卡eth0出口有100mbit/s的带宽。

a1、为所述网卡eth0配置htb队列。

a2、假设所述负载均衡服务器的业务分为三个级别,分别为:一级业务a、低级业务b和普通业务c,每个级别的业务对应一个vip接口。为根队列1创建两个类别,分别为类别1:1和类别1:2,其中,类别1:1占用80mbit的带宽,类别1:2占用20mbit的带宽。再在类别1:1下创建两个子类别,分别为子类别1:11和子类别1:12,其中,子类别1:12可占用的最低带宽为20mbit,最高可占用的带宽为40mbit。

a3、上述过程a2中的类别1:2、子类别1:11和子类别1:12分别对应三种数据流量类别,为前述三种数据流量类别创建三个过滤器,即所述流量分类规则。

步骤s203:所述负载均衡服务器判断所述ip数据包是否符合所述数据流量类别的限流规则。若所述ip数据包符合所述限流规则,执行步骤s204。若若所述ip数据包不符合所述限流规则,删除所述ip数据包。

在具体实现步骤s203的过程中,所述负载均衡服务器判断所述ip数据包是否符合所述数据流量类别的限流规则,若符合,则将所述ip数据包发送给指定的后端真实服务器,若不符合,则丢弃所述ip数据包,即删除所述ip数据包。

步骤s204:所述负载均衡服务器基于预设调度规则从与其连接的多台后端真实服务器中确定指定的后端真实服务器,将所述ip数据包发送给所述指定的后端真实服务器。

在具体实现步骤s204的过程中,所述负载均衡服务器根据预设调度规则从与其连接的多台后端真实服务器中选择指定的后端真实服务器,通过ip隧道将所述ip数据包发送给所述指定的后端真实服务器。

步骤s205:所述指定的后端真实服务器判断所述ip数据包是否符合预设tbf限速规则,若符合,执行步骤s206,若不符合,删除所述ip数据包。

需要说明的是,预先设置每台后端真实服务器的相关速率参数,例如:在每台所述后端真实服务器中设置速率为20mbit、可接受突发传输为40k和最大延迟为40ms。

在具体实现步骤s205的过程中,如图4示出的后端真实服务器处理ip数据包的示意图,结合步骤s202的过程a1-a3中的内容,当所述负载均衡服务器通过所述网卡eth0将所述ip数据包发送给所述指定的后端真实服务器后,所述指定的后端真实服务器判断所述ip数据包是否符合预设tbf限速规则。

若符合,所述指定的后端真实服务器处理所述ip数据包,若不符合,所述指定的后端真实服务器丢弃所述ip数据包,即删除所述ip数据包。

步骤s206:所述指定的后端真实服务器对所述ip数据包进行处理,将处理结果反馈给所述客户端。

在本发明实施例中,利用虚拟服务器对外提供对应的vip和端口号。客户端通过负载均衡服务器对应的vip和端口号发送数据处理请求和ip数据包,虚拟服务器根据预设调度规则选择指定的后端真实服务器,将ip数据包发送给该后端真实服务器进行数据处理,为各个后端真实服务器提供负载均衡服务,同时对ip数据包进行限流和tbf限速,实现后端真实服务器高可用。

需要说明的是,在执行上述本发明实施例图2各个步骤中的内容时,可能出现以下情况:后端真实服务器在运行过程中由于各种原因会出现宕机的异常情况。根据上述图2中各个步骤的内容,所述ip数据包可能会发送给出现宕机的后端真实服务器中,但由于该后端真实服务器已经宕机,会出现无法处理所述ip数据包的情况,因此需要周期性检测各个后端真实服务器是否在正常工作。

优选的,参见图5,示出了本发明实施例提供的确定后端真实服务器是否可用的流程图,包括以下步骤:

步骤s501:针对所述负载均衡服务器对应的每一所述后端真实服务器,所述负载均衡服务器周期性确定所述后端真实服务器是否可用。若不可用,执行步骤s502,若可用,执行步骤s503。

在具体实现步骤s501的过程中,所述负载均衡服务器基于tcp协议或udp协议,分别和与自身连接的每个后端真实服务器的端口建立连接。

若与后端真实服务器的端口建立连接成功,说明该后端真实服务器可用,若与后端真实服务器的端口建立连接失败,说明该后端真实服务器不可用。

步骤s502:将所述后端真实服务器对应的ip从所述虚拟服务器中删除。

由前述内容可知每台所述负载均衡服务器中都构建对应的虚拟服务器,并将与自身连接的后端真实服务器的ip添加至所述虚拟服务器中。

在具体实现步骤s502的过程中,所述负载均衡服务器将不可用的后端真实服务器对应的ip从所述虚拟服务器中删除。即ip数据包不发送给不可用的后端真实服务器。

需要说明的是,将宕机的后端真实服务器的ip从所述虚拟服务器中删除后,依旧会周期性检测宕机的后端真实服务器是否可用,当检测到其恢复可用后,将恢复可用的后端真实服务器的ip重新添加至所述虚拟服务器中。

步骤s503:确定所述虚拟服务器中是否存在所述后端真实服务器对应的ip。

需要说明的是,结合步骤s502所示的内容,后端真实服务器可用存在以下两种情况:

情况一、后端真实服务器可用且自身的ip在所述虚拟服务器中。

情况二、后端真实服务器当前可用,但是自身的ip不在所述虚拟服务器中。即在此之前,该后端真实服务器由于宕机原因,所述负载均衡服务器将该后端真实服务器的ip从所述虚拟服务器中删除,该后端真实服务器恢复可用但ip不在所述虚拟服务器中。

在具体实现步骤s503的过程中,若所述后端真实服务器可用但ip不在所述虚拟服务器中,所述负载均衡服务器将所述后端真实服务器对应的ip添加至所述虚拟服务器中。

步骤s504:若不存在所述后端真实服务器对应的ip,将所述后端真实服务器对应的ip添加至所述虚拟服务器中。

在本发明实施例中,负载均衡服务器周期性检测与自身连接的后端真实服务器是否可用,将不可用的后端真实服务器的ip从虚拟服务器中删除。避免将ip数据包发送给宕机的后端真实服务器,导致无法处理ip数据包,提高为用户提供的服务的可用性。

上述本发明实施例图1和图2中涉及的负载均衡服务装置的构建过程,参见图6,示出了本发明实施例提供的构建负载均衡服务装置的流程图,包括以下步骤:

步骤s601:负载均衡服务器接收第一构建请求。

需要说明的是,技术人员预先构建4层负载均衡服务,构建内容包括但不仅限于:高可用vip、服务端口号、协议类型、调度算法、rip列表。其中,所述协议类型为tcp或udp,所述调度算法为轮询算法或按权重轮询算法。

在具体实现步骤s601的过程中,所述负载均衡服务器接收所述4层负载均衡服务发送的第一构建请求,第一构建请求至少包括:所述负载均衡服务器的vip、端口号、和与其连接的多台后端真实服务器的ip。

步骤s602:所述负载均衡服务器基于所述第一构建请求构建对应的虚拟服务器,以及构建与其连接的多台后端真实服务器和所述虚拟服务器的对应关系。

在具体实现步骤s602的过程中,所负载均衡服务器基于所述第一构建请求构建对应的虚拟服务器,以及构建与其连接的多台后端真实服务器和所述虚拟服务器的对应关系。具体构建过程如过程b1-b4所示:

b1、所述负载均衡服务器确定是否存在预设的第一虚拟网卡。

b2、若存在所述第一虚拟网卡,所述负载均衡服务器将所述vip绑定到所述第一虚拟网卡上,构建虚拟服务器。

b3、若不存在所述第一虚拟网卡,所述负载均衡服务器创建所述第一虚拟网卡,并将所述vip绑定到所述第一虚拟网卡上,构建虚拟服务器。

需要说明的是,所述负载均衡服务器在构建所述虚拟服务器时,利用预设的协议和调度算法,创建tunnel模式的虚拟服务器。

b4、所述负载均衡服务器将与其连接的每一所述后端真实服务器的ip添加到所述虚拟服务器。

步骤s603:与所述负载均衡服务器对应的每一所述后端真实服务器接收第二构建请求。

在具体实现步骤s603的过程中,利用所述4层负载均衡服务向与所述负载均衡服务器对应的每一所述后端真实服务器发送第二构建请求,所述第二构建请求至少包括:所述负载均衡服务器的vip和所述后端真实服务器的端口号。

步骤s604:每一所述后端真实服务器基于所述第二构建请求,构建与对应所述负载均衡服务器的所述虚拟服务器的对应关系。

在具体实现步骤s604的过程中,每一所述后端真实服务器构建与对应所述负载均衡服务器的所述虚拟服务器的对应关系的内容,如过程c1-c3所示:

c1、每一所述后端真实服务器确定是否存在预设的第二虚拟网卡。

c2、若存在所述第二虚拟网卡,每一所述后端真实服务器将对应所述负载均衡服务器的所述vip绑定至所述第二虚拟网卡上。

c3、若不存在所述第二虚拟网卡,每一所述后端真实服务器创建所述第二虚拟网卡,并将对应所述负载均衡服务器的所述vip绑定至所述第二虚拟网卡上。

需要说明的是,每一所述后端真实服务器设置所述vip不对外响应客户端请求。

在本发明实施例中,通过4层负载均衡服务配置每台负载均衡服务器和每台后端真实服务器的相关参数,以及构建每台负载均衡服务器与多台后端真实服务器之间的对应关系。客户端通过负载均衡服务器对应的vip和端口号发送数据处理请求和ip数据包,虚拟服务器根据预设调度规则选择指定的后端真实服务器,将ip数据包发送给该后端真实服务器进行数据处理,为各个后端真实服务器提供负载均衡服务,实现后端真实服务器高可用。

上述本发明实施例图2中步骤s202和步骤s203中涉及的所述负载均衡服务器对所述ip数据包的处理过程,参见图7,示出了本发明实施例提供的负载均衡服务器处理ip数据包的流程图,包括以下步骤:

步骤s701:所述负载均衡服务器判断是否存在与所述ip数据包匹配的过滤器。若存在,执行步骤s702,若不存在,执行步骤s703。

由前述本发明实施例图2步骤s202中的内容可知,预先为每一数据流量类别创建对应的过滤器。在具实现步骤s701的过程中,当所述负载均衡服务器获取所述ip数据包后,判断是否存在与所述ip数据包匹配的过滤器。

若存在,获取与所述ip数据包匹配的过滤器对应的第一数据流量类别。

若不存在,确定所述ip数据包的数据流量类别为默认的第二数据流量类别。

步骤s702:获取与所述ip数据包匹配的过滤器对应的第一数据流量类别,确定所述ip数据包的数据流量类别为所述第一数据流量类别。

步骤s703:确定所述ip数据包的数据流量类别为默认的第二数据流量类别。

步骤s704:判断所述ip数据包是否符合自身对应的流量数据类型的限流规则。若符合,执行步骤s705,若不符合,执行步骤s706。

在具体实现步骤s704的过程中,需要说明的是,预先针对不同流量数据类型设置不同的限流规则。判断所述ip数据包是否符合自身对应的流量数据类型的限流规则,若不符合,则丢弃所述ip数据包。若符合,将所述ip数据包发送给所述指定的后端真实服务器。

步骤s705:将所述ip数据包发送给所述指定的后端真实服务器。

步骤s706:删除所述ip数据包。

在本发明实施例中,负载均衡服务器在接收到ip数据包后,通过预设的过滤器确定ip数据包的数据流量类别。判断ip数据包是否符合自身对应的流量数据类型的限流规则,若不符合则丢弃ip数据包,若符合则将ip数据包发送给指定的后端真实服务器,实现流量限制、业务隔离和服务降级,提高后端真实服务器的可用性。

与上述本发明实施例提供的一种负载均衡的方法相对应,参见图8,本发明实施例还提供一种负载均衡服务装置的结构框图,所述负载均衡服务装置包括:多台负载均衡服务器801,每一所述负载均衡服务器801连接多台后端真实服务器802;

所述负载均衡服务器801,用于接收客户端发送的数据处理请求和网络协议ip数据包,基于预设的流量分类规则,确定所述ip数据包的数据流量类别,并判断所述ip数据包是否符合所述数据流量类别的限流规则,若所述ip数据包符合所述限流规则,基于预设调度规则从与其连接的多台后端真实服务器802中确定指定的后端真实服务器802,将所述ip数据包发送给所述指定的后端真实服务器802,所述数据处理请求由所述客户端通过对应所述负载均衡服务器801的vip和端口号发送的,所述流量分类规则基于所述负载均衡服务器801的网卡带宽设置。

所述指定的后端真实服务器802,用于判断所述ip数据包是否符合预设tbf限速规则,若符合,对所述ip数据包进行处理,将处理结果反馈给所述客户端。

优选的,所述负载均衡服务器801还用于:接收第一构建请求,并基于所述第一构建请求构建对应的虚拟服务器,以及构建与其连接的多台后端真实服务器802和所述虚拟服务器的对应关系,第一构建请求至少包括:所述负载均衡服务器801的vip、端口号、和与其连接的多台后端真实服务器802的ip。

相应的,与所述负载均衡服务器801对应的每一所述后端真实服务器802,还用于接收第二构建请求,基于所述第二构建请求,构建与对应所述负载均衡服务器801的所述虚拟服务器的对应关系。

在本发明实施例中,利用虚拟服务器对外提供对应的vip和端口号。客户端通过负载均衡服务器对应的vip和端口号发送数据处理请求和ip数据包,虚拟服务器根据预设调度规则选择指定的后端真实服务器,将ip数据包发送给该后端真实服务器进行数据处理,为各个后端真实服务器提供负载均衡服务,同时对ip数据包进行限流和tbf限速,实现后端真实服务器高可用。

优选的,结合图8所示出的内容,所述负载均衡服务器801包括:判断单元、构建单元、创建单元和添加单元。其中,各个单元的执行原理如下:

判断单元,用于确定是否存在预设的第一虚拟网卡,若是,执行构建单元,若否,执行创建单元。

构建单元,用于将所述vip绑定到所述第一虚拟网卡上,构建虚拟服务器。

创建单元,用于创建所述第一虚拟网卡,并执行所述绑定单元。

添加单元,用于将与所述负载均衡服务器连接的每一所述后端真实服务器的ip添加到所述虚拟服务器。

在本发明实施例中,通过4层负载均衡服务配置每台负载均衡服务器和每台后端真实服务器的相关参数,以及构建每台负载均衡服务器与多台后端真实服务器之间的对应关系。客户端通过负载均衡服务器对应的vip和端口号发送数据处理请求和ip数据包,虚拟服务器根据预设调度规则选择指定的后端真实服务器,将ip数据包发送给该后端真实服务器进行数据处理,为各个后端真实服务器提供负载均衡服务,实现后端真实服务器高可用。

优选的,结合图8所示出的内容,所述负载均衡服务器801包括:第一判断单元、获取单元、确定单元、第二判断单元和删除单元。其中,各个单元的执行原理如下:

第一判断单元,用于判断是否存在与所述ip数据包匹配的过滤器,每一数据流量类别对应一个过滤器。若存在,执行获取单元,若不存在,执行确定单元。

获取单元,用于获取与所述ip数据包匹配的过滤器对应的第一数据流量类别,确定所述ip数据包的数据流量类别为所述第一数据流量类别。

确定单元,用于确定所述ip数据包的数据流量类别为默认的第二数据流量类别。

第二判断单元,用于判断所述ip数据包是否符合自身对应的流量数据类型的限流规则。若不符合,执行删除单元。

删除单元,用于删除所述ip数据包。

在本发明实施例中,负载均衡服务器在接收到ip数据包后,通过预设的过滤器确定ip数据包的数据流量类别。判断ip数据包是否符合自身对应的流量数据类型的限流规则,若不符合则丢弃ip数据包,若符合则将ip数据包发送给指定的后端真实服务器,实现流量限制、业务隔离和服务降级,提高后端真实服务器的可用性。

优选的,结合图8所示出的内容,所述负载均服务器801还用于:针对所述负载均衡服务器801对应的每一所述后端真实服务器802,所述负载均衡服务器801周期性确定所述后端真实服务器802是否可用。若不可用,将所述后端真实服务器802对应的ip从所述虚拟服务器中删除。若可用,确定所述虚拟服务器中是否存在所述后端真实服务器802对应的ip,若不存在,将所述后端真实服务器802对应的ip添加至所述虚拟服务器中。

在本发明实施例中,负载均衡服务器周期性检测与自身连接的后端真实服务器是否可用,将不可用的后端真实服务器的ip从虚拟服务器中删除。避免将ip数据包发送给宕机的后端真实服务器,导致无法处理ip数据包,提高为用户提供的服务的可用性。

基于上述本发明实施例公开的一种负载均衡服务装置,上述各个模块可以通过一种由处理器和存储器构成的电子设备实现。具体为:上述各个模块作为程序单元存储于存储器中,由处理器执行存储在存储器中的上述程序单元来实现负载均衡。

其中,处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现负载均衡。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

进一步的,本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行负载均衡的方法。

进一步的,本发明实施例提供了一种电子设备,所述电子设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现如上任一实施例中示出的负载均衡的方法。

本发明实施例中公开的设备可以是pc、pad、手机等。

进一步的,本发明实施例还提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现负载均衡。

本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如上任一实施例中示出的负载均衡的方法。

综上所述,本发明实施例提供一种负载均衡的方法及负载均衡服务装置,该方法为:负载均衡服务器接收客户端发送的数据处理请求和ip数据包,基于预设的流量分类规则,确定ip数据包的数据流量类别,并判断ip数据包是否符合数据流量类别的限流规则,若符合,从与其连接的多台后端真实服务器中确定指定的后端真实服务器,将ip数据包发送给该后端真实服务器;指定的后端真实服务器判断ip数据包是否符合预设tbf限速规则,若符合,对ip数据包进行处理,将处理结果反馈给客户端。本方案中,利用虚拟服务器对外提供对应的vip和端口号。客户端通过负载均衡服务器对应的vip和端口号发送数据处理请求和ip数据包,虚拟服务器根据预设调度规则选择指定的后端真实服务器,将ip数据包发送给该后端真实服务器进行数据处理,为各个后端真实服务器提供负载均衡服务,同时对ip数据包进行限流和限速,实现后端真实服务器高可用。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1