CN109831524B - 一种负载均衡处理方法及装置 - Google Patents
一种负载均衡处理方法及装置 Download PDFInfo
- Publication number
- CN109831524B CN109831524B CN201910182511.2A CN201910182511A CN109831524B CN 109831524 B CN109831524 B CN 109831524B CN 201910182511 A CN201910182511 A CN 201910182511A CN 109831524 B CN109831524 B CN 109831524B
- Authority
- CN
- China
- Prior art keywords
- load balancing
- service
- node
- client
- operation data
- 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
Links
Images
Abstract
本发明实施例公开了一种负载均衡处理方法及装置,其中,所述方法包括:负载均衡节点接收第一客户端的第一创建请求,第一创建请求用于请求创建第一负载均衡实例;负载均衡节点为第一客户端创建第一负载均衡实例;在负载均衡节点运行第一负载均衡实例的第一阶段内,按照轮循均衡算法调度N个服务节点,并获取第一阶段内N个服务节点的运行数据;负载均衡节点根据第一阶段内N个服务节点的运行数据计算运行数据的权重;在运行第一负载均衡实例的第二阶段内,负载均衡节点依据运行数据的权重调度N个服务节点。本发明实施例为客户端配置的负载均衡方案兼顾了客户端的实际需求和服务节点的实际性能,提升了负载均衡效果。
Description
技术领域
本发明涉及计算机技术和通信技术领域,尤其涉及一种负载均衡处理方法及装置。
背景技术
云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。云计算拥有这么强大的计算能力,可以模拟核爆炸、预测气候变化和市场发展趋势。用户可以通过电脑、笔记本、手机等方式接入数据中心,按自己的需求进行运算。
以云计算为后台的负载均衡技术目的在于利用经济有效的技术手段提高企业信息技术基础架构的性能,满足应用系统对于资源的常规和突发需求,从而支持企业信息技术平台在规模上的显著提升。负载均衡是一种服务器或网络设备的集群技术。负载均衡将特定的业务(网络服务、网络流量等)分担给多个服务器或网络设备,从而提高了业务处理能力,保证了业务的高可用性通过一定规则将业务请求分发到多台服务器上,以实现服务的横向可扩展。
目前,云计算厂商为客户提供负载均衡方案,都是给出固定的几个规格,客户只能在有限的几个规格里面进行单向的选择。并且现有的负载均衡方案给出的参数维度太少,不能精准的应对客户的需求,负载均衡效果差。
发明内容
本发明实施例提供了一种负载均衡处理方法及装置,本发明实施例为客户端配置的负载均衡方案兼顾了客户端的实际需求和服务节点的实际性能,提升了负载均衡效果。
第一方面,本发明实施例提供了一种负载均衡处理方法,该方法包括以下步骤:
负载均衡节点接收第一客户端的第一创建请求,第一创建请求用于请求为第一客户端创建第一负载均衡实例;
负载均衡节点为第一客户端创建第一负载均衡实例;
在负载均衡节点运行第一负载均衡实例的第一阶段,按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点,并获取第一阶段内N个服务节点的运行数据,N为正整数;
负载均衡节点根据第一阶段内N个服务节点的运行数据计算运行数据的权重;
负载均衡节点在运行第一负载均衡实例的第二阶段,按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求。
可选的,运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建传输控制协议(英文全称:Transmission Control Protocol,英文缩写:TCP)连接速率、中央处理器(英文全称:Central Processing Unit,英文缩写:CPU)处理速率和内存空闲率中的一个或多个。
本发明实施例中,相对于现有技术中仅考虑网络流量、CPU处理速率和内存使用率这三种性能指标,本发明实施例从网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、CPU处理速率和内存空闲率这七方面对服务节点的性能做了更全面的衡量,更多的性能指标也提升了本发明实施例所提的负载均衡处理方法的适用性。
可选的,负载均衡节点根据第一阶段内N个服务节点的运行数据计算运行数据的权重,包括:负载均衡节点根据第一阶段内N个服务节点中的各个服务节点的运行数据以及运行数据中的各个运行数据的权重,得到第一阶段内N个服务节点中的各个服务节点的性能指标,运行数据中的各个运行数据的权重为未知变量;负载均衡节点根据第一阶段内N个服务节点中的各个服务节点的性能指标,得到第一阶段内N个服务节点的性能指标的平均值;负载均衡节点以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,目标函数的待优化变量为运行数据中的各个运行数据的权重;负载均衡节点优化目标函数,求得运行数据中的各个运行数据的权重的最优解。
本发明实施例中,负载均衡节点以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,从而优化运行数据中的各个运行数据的权重,所提算法操作简单易实现,算法适用性强。
可选的,所述负载均衡节点根据所述第一阶段内所述N个服务节点的运行数据计算所述运行数据的权重之后,还包括:负载均衡节点提取第一阶段内第一客户端的服务请求的第一特征信息;负载均衡节点根据第一特征信息,对第一客户端进行分类;负载均衡节点生成第一记录,并将第一记录存入共享规格表,第一记录包括第一客户端的用户类型、第一特征信息和第一规格信息,第一规格信息为运行数据的权重的最优解,共享规格表中包括至少一个客户端对应的记录。
本发明实施例中,负载均衡节点生成第一记录,并将第一记录存入共享规格表,第一记录包括第一客户端的用户类型、第一特征信息和第一规格信息。负载均衡节点通过不断在共享规格表中增添记录,为向用户智能地推荐合适的负载均衡方案做准备。
可选的,本发明实施例所提的负载均衡处理方法还包括:负载均衡节点接收第二客户端发送的第二服务请求,第二服务请求对应的第二负载均衡实例与第一负载均衡实例配置了相同的服务节点;负载均衡节点提取第二服务请求的第二特征信息;负载均衡节点根据第二特征信息确定第二客户端的用户类型;负载均衡节点根据共享规格表查询第二客户端的用户类型对应的第二规格信息;负载均衡节点根据第二规格信息中的运行数据的权重从N个服务节点中选择服务节点处理来自第二服务请求。
本发明实施例中,负载均衡节点接收第二客户端发送的第二服务请求后,根据共享规格表查询第二客户端的用户类型对应的第二规格信息,然后依据第二规格信息中的运行数据的权重调度N个服务节点。通过本发明实施例所提方案,能够智能地给为所接收的服务请求配置合适的负载均衡规格信息,实际应用场景下,本发明实施例可以灵活地适应用户需求的变化。
可选的,本发明实施例所提的负载均衡处理方法还包括:负载均衡节点接收第二客户端发送的第二创建请求以及一个或多个服务请求,第二创建请求用于请求创建第三负载均衡实例,第三负载均衡实例与第一负载均衡实例配置相同的服务节点;提取上述一个或多个服务请求的第三特征信息;负载均衡节点根据第三特征信息确定第二客户端的用户类型;负载均衡节点根据共享规格表查询第二客户端的用户类型对应的第三规格信息;负载均衡节点创建并运行第三负载均衡实例,负载均衡节点在运行第三负载均衡实例期间根据N个服务节点当前的运行数据以及第三规格信息中的运行数据的权重,从N个服务节点中选择服务节点处理来自第二客户端的服务请求。
本发明实施例中,负载均衡节点接收第二客户端的第二创建请求和服务请求后,根据共享规格表查询第二客户端的用户类型对应的第三规格信息,然后创建并运行第三负载均衡实例,第三负载均衡实例依据第三规格信息中的运行数据的权重调度N个服务节点。通过本发明实施例所提方案,能够智能地给为所接收的创建请求配置合适的负载均衡规格信息,实际应用场景下,所提方案能适应客户端的需求,实现更好的负载均衡。
第二方面,本发明实施例还提供了一种负载均衡处理装置,该装置能实现上述第一方面及其可选实施例的负载均衡处理方法中的负载均衡节点的功能,因此也能实现第一方面及其可选实施例的负载均衡处理方法所具备的有益效果。其中,该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括至少一个与上述功能相对应的模块。
可选的,该装置包括第一接收单元、创建单元、第一获取单元、计算单元和第一选择单元。
第一接收单元,用于接收第一客户端的第一创建请求,第一创建请求用于请求为第一客户端创建第一负载均衡实例。
创建单元,用于为第一客户端创建第一负载均衡实例。
第一获取单元,用于在运行第一负载均衡实例的第一阶段,按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点,并获取第一阶段内N个服务节点的运行数据,N为正整数。
计算单元,用于根据第一阶段内N个服务节点的运行数据计算运行数据的权重。
第一选择单元,用于在运行第一负载均衡实例的第二阶段内,按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求。
可选的,运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、CPU处理速率和内存空闲率中的一个或多个。
可选的,计算单元具体用于:根据第一阶段内N个服务节点中的各个服务节点的运行数据以及运行数据中的各个运行数据的权重,得到第一阶段内N个服务节点中的各个服务节点的性能指标,运行数据中的各个运行数据的权重为未知变量;根据第一阶段内N个服务节点中的各个服务节点的性能指标,得到第一阶段内N个服务节点的性能指标的平均值;以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,目标函数的待优化变量为运行数据中的各个运行数据的权重;优化目标函数,求得运行数据中的各个运行数据的权重的最优解。
可选的,计算单元根据第一期间第一阶段内N个服务节点的运行数据计算运行数据的权重之后,上述负载均衡处理装置还包括:第一提取单元、分类单元和生成单元。
第一提取单元,用于提取第一阶段内第一客户端的服务请求的第一特征信息。
分类单元,用于根据第一特征信息,对第一客户端进行分类。
生成单元,用于生成第一记录,并将第一记录存入共享规格表,第一记录包括第一客户端的用户类型、第一特征信息和第一规格信息,第一规格信息为运行数据的权重的最优解,共享规格表中包括至少一个客户端对应的记录。
可选的,上述负载均衡处理装置还包括:第三接收单元、第二提取单元、第一确定单元、第一查询单元和第二选择单元。
第三接收单元,用于接收第二客户端发送的第二服务请求,第二服务请求对应的第二负载均衡实例与第一负载均衡实例配置了相同的服务节点。
第二提取单元,用于提取第二服务请求的第二特征信息。
第一确定单元,用于根据第二特征信息确定第二客户端的用户类型。
第一查询单元,用于根据共享规格表查询第二客户端的用户类型对应的第二规格信息。
第二选择单元,用于根据第二规格信息中的运行数据的权重,从N个服务节点中选择服务节点处理第二服务请求。
可选的,上述负载均衡处理装置还包括:第四接收单元、第三提取单元、第二确定单元、第二查询单元和第三选择单元。
第四接收单元,用于接收第二客户端发送的第二创建请求以及一个或多个服务请求,第二创建请求用于请求创建第三负载均衡实例,第三负载均衡实例与第一负载均衡实例配置相同的服务节点。
第三提取单元,用于提取上述一个或多个服务请求的第三特征信息。
第二确定单元,用于根据第三特征信息确定第二客户端的用户类型。
第二查询单元,用于根据共享规格表查询第二客户端的用户类型对应的第三规格信息。
第三选择单元,用于创建并运行第四负载均衡实例,在运行第四负载均衡实例期间根据第三规格信息中的运行数据的权重,从N个服务节点中选择服务节点处理来自第二客户端的服务请求。
第三方面,本发明实施例还提供了一种服务器,该服务器能实现上述第一方面及其可选实施例描述的负载均衡处理方法中负载均衡节点的功能,因此也能实现第一方面及其可选实施例描述的负载均衡处理方法所具备的有益效果。其中,该服务器的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括至少一个与上述功能相对应的模块。该服务器包括存储器、处理器和收发器,存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,处理器用于根据程序指令对服务器的动作进行控制管理,收发器用于支持服务器与其它通信设备的通信。
第四方面,本发明实施例还提供了一种负载均衡处理系统,所述系统包括第二方面或第三方面描述的服务器,还包括客户端和服务节点。
第五方面,本发明实施例提供一种计算机可读存储介质,可读存储介质上存储有指令,当其在处理器上运行时,使得处理器执行上述第一方面描述的负载均衡处理方法。
本发明实施例中,负载均衡节点接收第一客户端创建第一负载均衡实例的请求后,为第一客户端创建第一负载均衡实例,并在运行第一负载均衡实例的第一阶段内,获取N个服务节点的运行数据,并根据上述运行数据计算运行数据的权重,然后在运行第一负载均衡实例的第二阶段内,按照N个服务节点当前的运行数据以及运行数据的权重调度N个服务节点。综上所述,第一负载均衡实例第二阶段所使用的运行数据的权重,同时兼顾了第一客户端的实际需求和N个服务节点多维度的实时性能。因此,本发明实施例为客户端配置的负载均衡方案兼顾了客户端的实际需求和服务节点的实际性能,有效提升了负载均衡效果。
附图说明
下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本发明实施例提供的一种负载均衡处理系统的系统架构示意图;
图2是本发明实施例提供的一种服务器的结构示意图;
图3A是本发明实施例提供的一种负载均衡处理方法的流程示意图;
图3B是本发明实施例提供的另一种负载均衡处理方法的流程示意图;
图3C是本发明实施例提供的另一种负载均衡处理方法的流程示意图;
图4是本发明实施例提供的另一种负载均衡处理方法的流程示意图;
图5是本发明实施例提供的一种负载均衡处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。此外,术语“第一”、“第二”和“第三”等是用于区别不同的对象,而并非用于描述特定的顺序。
需要说明的是,在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
负载均衡技术建立在现有网络结构之上,该技术是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。均衡负载能够平均分配客户请求到服务器列阵,借此提供快速获取重要数据,解决大量并发访问服务问题。负载均衡提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
如图1所示是本发明提供的一种负载均衡处理系统100的系统架构示意图。由图1可知,负载均衡处理系统100包括客户端101、负载均衡节点102和服务节点103。负载均衡节点102的业务系统包含一个或多个客户端101,负载均衡节点102配置一个或多个负载均衡资源池,每个负载均衡资源池包括多个服务节点103。客户端101若要享有负载均衡服务,需创建负载均衡实例,在实例中添加监听器和服务节点,并定义该负载均衡实例的负载均衡策略和转发规则。负载均衡节点102负责服务服务请求的转发、响应报文的转发、定位监听器及负载均衡资源池与服务节点103的选择。服务节点103负责处理客户端的服务请求。
客户端101可以是具有智能计算功能,并能与其他设备进行通信交互的终端设备上的可以访问互联网的应用程序、浏览器等应用。本发明实施例中提及的终端设备包括手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备或其他移动终端。负载均衡节点102有多种多样的形式,除了作为独立意义上的负载均衡节点部署于负载均衡物理节点外,有些负载均衡节点集成在交换设备中,有些则以两块网络适配器将这一功能集成到计算机中,一块连接到互联网上,一块连接到负载均衡资源池的内部网络上。服务节点103可以是物理服务器,也可以是虚拟服务器。
下面以服务器为例,对上述负载均衡处理系统100中的负载均衡节点102的功能进行详细介绍。
请参见图2,图2为本发明实施例提供的一种服务器200的硬件结构示意图,服务器200包括:存储器201、收发器202及与所述存储器201和收发器202耦合的处理器203。存储器201用于存储计算机程序,所述计算机程序包括程序指令,处理器203用于执行存储器201存储的程序指令,收发器202用于在处理器203的控制下与其他设备进行通信。
其中,处理器203可以是中央处理器(英文:central processing unit,简称:CPU),通用处理器,数字信号处理器(英文:digital signal processor,简称:DSP),专用集成电路(英文:application-specific integrated circuit,简称:ASIC),现场可编程门阵列(英文:field programmable gate array,简称:FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。收发器202可以是通信接口、收发电路等,其中,通信接口是统称,可以包括一个或多个接口,例如服务器与服务器之间的接口。
可选地,服务器200还可以包括总线204。其中,存储器201、收发器202以及处理器203可以通过总线204相互连接;总线204可以是外设部件互连标准(英文:peripheralcomponent interconnect,简称:PCI)总线或扩展工业标准结构(英文:extended industrystandard architecture,简称:EISA)总线等。总线204可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
除了图2所示的存储器201、收发器202、处理器203以及上述总线204之外,实施例中服务器200通常根据该服务器的实际功能,还可以包括其他硬件,对此不再赘述。
在上述运行环境下,本发明实施例提供了如图3A所示的负载均衡处理方法。请参阅图3A,所述负载均衡处理方法包括:
S301、负载均衡节点接收第一客户端的第一创建请求,第一创建请求用于请求为第一客户端创建第一负载均衡实例。
可选的,客户端可以是具有智能计算功能,并能与其他设备进行通信交互的终端设备上的可以访问互联网的应用程序、浏览器等应用。本发明实施例中提及的终端设备包括手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备或其他移动终端。
负载均衡节点是进行负载分配的服务器,负载均衡节点接收客户端的服务请求,然后根据预设的负载均衡策略将服务请求具体分配到某个服务节点。负载均衡控制与管理软件安装在负载均衡节点上,负载均衡节点一般只做负载均衡任务分配,不是实际对服务请求进行处理的服务器。负载均衡节点有多种多样的形式,除了作为独立意义上的负载均衡节点部署于负载均衡物理节点外,有些负载均衡节点集成在交换设备中,有些则以两块网络适配器将这一功能集成到计算机中,一块连接到互联网上,一块连接到负载均衡资源池的内部网络上。
负载均衡实例是一个运行的负载均衡服务实体。为了使用负载均衡服务,用户必须配置及创建一个负载均衡实例,并在负载均衡实例中添加一个或多个监听器,以及一个或多个负载均衡资源池或多个服务节点。当用户不再需要负载均衡服务时,可以删除负载均衡实例,删除负载均衡实例不会影响负载均衡资源池及服务节点的运行。
S302、负载均衡节点为第一客户端创建第一负载均衡实例。
可选的,负载均衡节点为第一客户端创建第一负载均衡实例,并在第一负载均衡实例中添加第一监听器和N个服务节点,并定义该负载均衡实例的负载均衡策略和转发规则。第一阶段内第一负载均衡实例的负载均衡策略即按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点。
目前,已有多种负载均衡策略,其中,随机均衡是把来自网络的请求随机分配给多个服务节点。轮循均衡是将来自网络的请求轮流分配给多个服务节点。最少连接数均衡是把新的连接请求分配到当前连接数最小的服务节点。由于不同服务节点的处理性能可能不同,以及每个服务节点的连接进程可能会存在极大的不同,因此,轮循均衡、随机均衡和最少连接数均衡虽然算法简单,但适用性较差。
S303、在负载均衡节点运行第一负载均衡实例的第一阶段内,按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点,并获取第一阶段内N个服务节点的运行数据,N为正整数,N个服务节点是在第一负载均衡实例中为第一客户端配置的服务节点。
可以理解,在负载均衡节点运行第一负载均衡实例的第一阶段,是为第一客户端提供负载均衡的试用服务,第一阶段内第一负载均衡实例的负载均衡策略为轮循均衡算法。同时,在第一阶段可以收集第一阶段内N个服务节点处理来自第一客户端的服务请求的过程中上述N个服务节点的运行数据。
可选的,运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、CPU处理速率和内存空闲率中的一个或多个。
可选的,在负载均衡节点运行第一负载均衡实例的第一阶段内,按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点,并获取第一阶段内N个服务节点的运行数据,具体包括:在第一阶段内,负载均衡节点接收第一客户端发送的第一服务请求报文,所述第一服务请求报文包括第一客户端的地址信息、负载均衡节点的地址信息和第一负载均衡实例的地址信息,所述第一服务请求报文用于请求服务节点处理第一服务请求。负载均衡节点根据第一负载均衡实例的地址信息查看第一负载均衡实例对应的第一监听器,从而查找第一负载均衡实例对应的N个服务节点。负载均衡节点根据轮循均衡算法,选择N个服务节点中的第i个服务节点处理第一服务请求。负载均衡节点修改第一服务请求报文中的负载均衡节点的地址信息为上述N个服务节点中的第i个服务节点的地址信息,得到第二请求报文。负载均衡节点向N个服务节点中的第i个服务节点发送第二服务请求报文。负载均衡节点获取N个服务节点中的第i个服务节点处理第一服务请求期间该服务节点的运行数据。在第一阶段的结束时刻,负载均衡节点获取第一阶段内N个服务节点中各个服务节点处理第一客户端的服务请求期间各个服务节点的运行数据的平均值,并将上述各个服务节点的运行数据的平均值作为第一阶段内N个服务节点的运行数据。
可选的,负载均衡节点根据预设的监控周期定期获取N个服务节点的运行数据。即在每个监控周期结束时刻,负载均衡节点获取该监控周期内N个服务节点的运行数据,包括该监控周期内N个服务节点的网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率中的一个或多个。第一阶段包括H个监控周期,其中上述H个监控周期中的最后一个监控周期的结束时刻早于或等于第一阶段的结束时刻。在第一阶段的结束时刻,负载均衡节点获取上述H个监控周期的运行数据,并将N个服务节点在上述H个监控周期的运行数据的平均值作为第一阶段内N个服务节点的运行数据。
S304、负载均衡节点根据第一阶段内N个服务节点的运行数据计算运行数据的权重。
可选的,若运行数据为网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率和CPU处理速率。则负载均衡节点根据第一阶段内N个服务节点的运行数据计算运行数据的权重,具体包括以下步骤:
第一阶段内N个服务节点中的第i个服务节点的网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率,并分别表示为a(i)、b(i)、c(i)、d(i)、e(i)和f(i),该服务节点的CPU个数表示为m(i),该服务节点第j个CPU的CPU处理速率表示为g(i,j)。网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率和CPU处理速率对应的权重分别表示为x1、x2、x3、x4、x5、x6和x7。
S1、负载均衡节点根据第一阶段内N个服务节点中的各个服务节点的运行数据以及运行数据中的各个运行数据的权重,得到第一阶段内N个服务节点中的各个服务节点的性能指标,运行数据中的各个运行数据的权重为未知变量。
可选的,计算第一阶段内N个服务节点各个运行数据的平均值如下所示, 其中,aAVG、bAVG、cAVG、dAVG、f1AVG、e1AVG和gAVG分别表示第一阶段内N个服务节点的网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率和CPU处理速率的平均值。计算N个服务节点中的第i个服务节点的负载性能指标H(i),H(i)的表达式如下所示。
H(i)=x1×a(i)/aAVG(i)+x2×b(i)/bAVG(i)+x3×c(i)/cAVG(i)+x4×d(i)/dAVG(i)+x5×e(i)/eAVG(i)+x6×m(i)×f(i)/fAVG(i)+x7×g(i)/gAVG(i)
S2、负载均衡节点根据第一阶段内N个服务节点中的各个服务节点的性能指标,得到第一阶段内N个服务节点的性能指标的平均值。
S3、负载均衡节点以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,目标函数的待优化变量为运行数据中的各个运行数据的权重。
可选的,以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数f(X),f(X)的表达式如下所示。
其中,向量X={x1,x2,x3,x4,x5,x6,x7}。
S4、负载均衡节点优化目标函数,求得运行数据中的各个运行数据的权重的最优解。
可选的,利用梯度下降法优化目标函数f(X),求得运行数据中的各个运行数据的权重的最优解。
可选的,若运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率和CPU处理速率中的一个或K个,K为小于7的正整数。负载均衡节点根据第一阶段内N个服务节点的运行数据计算运行数据的权重的实施方式可类比于上述实施例的具体步骤,此处不再赘述。
S405、负载均衡节点在运行第一负载均衡实例的第二阶段内,按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求,运行数据的权重即上述各个运行数据的权重的最优解。
可以理解,第一负载均衡实例的第二阶段内的负载均衡策略为权重均衡算法,负载均衡节点在运行第一负载均衡实例的第一阶段内收集N个服务节点的运行数据,从而为第一负载均衡实例的第二阶段的负载均衡策略提供权重参数。
需要说明的是,权重均衡算法即为服务节点的运行数据配置权重参数,根据服务节点的当前的运行数据和各运行数据对应的权重参数,计算服务节点的性能指标,从而判断服务节点的处理能力,将请求分配给处理能力强的服务节点。权重均衡算法能确保高性能的服务节点得到更多的使用率,避免低性能的服务节点负载过重。
可选的,当前的运行数据至少包括第一监控周期内的分析数据,第一监控周期位于第一时刻之前且第一监控周期的终止时刻与第一时刻之间的时长小于监控周期的时长,第一时刻为负载均衡节点接收到客户端发送的服务请求的时刻。
可选的,负载均衡节点在运行第一负载均衡实例的第二阶段内,按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求,具体包括以下步骤括:
A1、负载均衡节点获取N个服务节点当前的运行数据。
A2、负载均衡节点根据N个服务节点当前的运行数据以及运行数据的权重计算N个服务节点中的各个服务节点的性能指标。
可选的,N个服务节点中的第i个服务节点的当前的运行数据中的网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率,分别表示为和该服务节点第j个CPU的CPU处理速率表示为负载均衡节点根据N个服务节点的当前的运行数据,得到N个服务节点的当前的运行数据的平均值。第一阶段内N个服务节点的各个当前的运行数据的平均值如下所示, 其中,和分别表示N个服务节点当前的运行数据中的网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、内存空闲率和CPU处理速率的平均值。计算N个服务节点中的第i个服务节点的性能指标H(i),H(i)的表达式如下所示。
A3、负载均衡节点从N个服务节点中选择性能指标最大的服务节点作为目标服务节点,目标服务节点用于处理来自第一客户端的服务请求。
本发明实施例中,负载均衡节点接收第一客户端创建第一负载均衡实例的请求后,在运行第一负载均衡实例的第一阶段内,获取N个服务节点的运行数据,并根据上述运行数据计算运行数据的权重,然后在运行第一负载均衡实例的第二阶段内,按照N个服务节点当前的运行数据以及运行数据的权重调度N个服务节点。综上所述,第一负载均衡实例所使用的运行数据的权重,同时兼顾了第一客户端的实际需求和N个服务节点多维度的实时性能。因此,通过上述方案,能根据客户端的实际需求,双向的为客户端推荐合适的负载均衡方案。此外,本发明实施例中,相对于现有技术中仅考虑网络流量、CPU处理速率和内存使用率这三种性能指标,本发明实施例从网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、CPU处理速率和内存空闲率这七方面对服务节点的性能做了更全面的衡量,更多的性能指标也提升了本发明实施例所提的负载均衡处理方法的适用性。本发明实施例中,负载均衡节点以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,从而优化运行数据中的各个运行数据的权重,所提算法操作简单易实现,算法适用性强。
可选的,负载均衡节点创建并运行第一负载均衡实例之后,如图3.b所示,本发明实施例提供的负载均衡处理方法还包括:
S306、负载均衡节点提取第一阶段内第一客户端的服务请求的第一特征信息。
可选的,负载均衡节点根据第一阶段内第一客户端的所有服务请求中的一或多个服务请求,提取第一特征信息。提取第一特征信息的提取方式可以包括关键词提取、服务请求类型提取或应用背景提取,本发明对此不作具体限定。
S307、负载均衡节点根据第一特征信息,对第一客户端进行分类。
S308、负载均衡节点生成第一记录,并将第一记录存入共享规格表,第一记录包括第一客户端的用户类型、第一特征信息和第一规格信息,第一规格信息为运行数据的权重的最优解,共享规格表中包括至少一个客户端对应的记录。
可选的,第一记录还包括第一记录生成时间。记录共享规格表中每种用户类型可以对应一或多种规格信息。如表1所示,是本发明实施例提供的一种共享规格表。
表1
本发明实施例中,负载均衡节点生成第一记录,并将第一记录存入共享规格表,第一记录包括第一客户端的第一用户类型、第一特征信息和第一规格信息。负载均衡节点通过不断在共享规格表中增添记录,为向用户智能地推荐合适的负载均衡方案做准备。
可选的,如图3.c所示,本发明实施例提供的负载均衡处理方法还包括:
S309、负载均衡节点接收第二客户端发送的第二服务请求,第二服务请求对应的第二负载均衡实例与第一负载均衡实例配置了相同的服务节点。
S310、负载均衡节点提取第二服务请求的第二特征信息。
可选的,提取第二特征信息的提取方式可以包括关键词提取、服务请求类型提取或应用背景提取,本发明对此不作具体限定。
S311、负载均衡节点根据第二特征信息确定第二客户端的用户类型。
S312、负载均衡节点根据共享规格表查询第二客户端的用户类型对应的第二规格信息。
可选的,负载均衡节点根据共享规格表查询第二客户端的用户类型对应的第二规格信息,若共享规格表中第二客户端的用户类型对应多个规格信息,则根据上述多个规格信息对应的记录的生成时间,选择最新生成的记录中的规格信息作为第二规格信息。
S313、负载均衡节点根据第二规格信息中的运行数据的权重从N个服务节点中选择服务节点处理来自第二服务请求。
具体的,负载均衡节点按照第二规格信息中的运行数据的权重和N个服务节点当前的运行数据从N个服务节点中选择服务节点处理第二服务请求。
可选的,本发明实施例所提的负载均衡处理方法还包括:负载均衡节点接收第二客户端发送的第二创建请求以及一个或多个服务请求,第二创建请求用于请求创建第三负载均衡实例,第三负载均衡实例与第一负载均衡实例配置相同的服务节点;提取上述一个或多个服务请求的第三特征信息;负载均衡节点根据第三特征信息确定第二客户端的用户类型;负载均衡节点根据共享规格表查询第二客户端的用户类型对应的第三规格信息;负载均衡节点创建并运行第三负载均衡实例,负载均衡节点在运行第三负载均衡实例期间根据第三规格信息中的运行数据的权重和N个服务节点当前的运行数据,从N个服务节点中选择服务节点处理来自第二客户端的服务请求。
本发明实施例中,负载均衡节点接收第二客户端的第二创建请求和服务请求后,根据共享规格表查询第二客户端的用户类型对应的第三规格信息,然后创建并运行第三负载均衡实例,第三负载均衡实例依据第三规格信息中的运行数据的权重调度N个服务节点。通过本发明实施例所提方案,能够智能地给为所接收的创建请求配置合适的负载均衡规格信息,实际应用场景下,所提方案能适应客户端的需求,实现更好的负载均衡。
本发明实施例还提供了如图4所示的负载均衡方法负载均衡处理方法。请参阅图4,所述负载均衡方法负载均衡处理方法包括:
S401、负载均衡节点接收第一客户端的第一创建请求,第一创建请求用于请求为第一客户端创建第一负载均衡实例。
S402、负载均衡节点为第一客户端创建第二负载均衡实例,并在第一时间段内运行第二负载均衡实例,第二负载均衡实例是为第一客户端创建的试用负载均衡实例,用于收集N个服务节点的运行数据。
可以理解,负载均衡节点为第一客户端创建第二负载均衡实例并运行第二负载均衡实例,是为第一客户端提供负载均衡的试用服务。同时,可以收集N个服务节点处理来自第一客户端的服务请求的过程中上述N个服务节点的运行数据。上述收集的运行数据用于创建第一负载均衡实例。
可以理解,本实施例所提的第二负载均衡实例对应于图3A所示的实施例中的第一负载均衡实例的第一阶段,本实施例所提的第一负载均衡实例对应于图3A所示的实施例中的第一负载均衡实例的第二阶段。本实施例所提的第一负载均衡实例和第二负载均衡实例负载均衡策略不同,其他配置相同。
可选的,负载均衡节点为第一客户端创建第二负载均衡实例,并在第二负载均衡实例中添加第一监听器和N个服务节点,并定义该负载均衡实例的负载均衡策略和转发规则。第二负载均衡实例的负载均衡策略即按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点。
S403、在负载均衡节点运行第二负载均衡实例的第一时间段内,按照轮询均衡算法将来自第一客户端的服务请求依次调度给N个服务节点,并获取第一时间段内N个服务节点的运行数据,N为正整数。
可选的,第一时间段内负载均衡节点接收第一客户端的服务请求,该服务请求对应于第二负载均衡实例;负载均衡节点按照轮循均衡算法从N个服务节点选择目标服务节点,目标服务节点用于处理该服务请求;负载均衡节点将该服务请求发送给目标服务节点。
本步骤具体实施方式可类比于S303步骤的可选实施例,此处不再赘述。
S404、负载均衡节点根据第一时间段内N个服务节点的运行数据计算运行数据的权重。
本步骤具体实施方式可类比于S304步骤的可选实施例,此处不再赘述。
S405、负载均衡节点创建并运行第一负载均衡实例,第一负载均衡实例与第二负载均衡实例配置相同的服务节点,负载均衡节点在运行第一负载均衡实例期间按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求。
可以理解,负载均衡节点通过创建并运行第二负载均衡实例,为第一负载均衡实例的负载均衡策略提供负载均衡策略的权重参数。
可选的,负载均衡节点为第一客户端创建第一负载均衡实例,并在第一负载均衡实例中添加第一监听器和上述N个服务节点,即第一负载均衡实例与第二负载均衡实例配置相同的监听器和服务节点。并定义第一负载均衡实例的负载均衡策略和转发规则。第一负载均衡实例的负载均衡策略即按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求。
可选的,负载均衡节点接收第一客户端的服务请求,该服务请求对应于第一负载均衡实例;负载均衡节点按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点,目标服务节点用于处理该服务请求;负载均衡节点将该服务请求发送给目标服务节点。
负载均衡节点在运行第一负载均衡实例期间按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求,上述过程的具体实施方式可类比于S305步骤的可选实施例,此处不再赘述。
本发明实施例中,负载均衡节点接收第一客户端创建第一负载均衡实例的请求后,先为第一客户端创建第二负载均衡实例并运行第二负载均衡实例,在运行第二负载均衡实例的第一时间段内,获取N个服务节点的运行数据,并根据上述运行数据计算运行数据的权重,然后再创建并运行第一负载均衡实例,在运行第一负载均衡实例期间按照N个服务节点当前的运行数据以及运行数据的权重调度N个服务节点。综上所述,第一负载均衡实例所使用的运行数据的权重,同时兼顾了第一客户端的实际需求和N个服务节点多维度的实时性能。因此,通过上述方案,能根据客户端的实际需求,双向的为客户端推荐合适的负载均衡方案。
本发明实施例还提供了一种负载均衡处理装置,该装置能实现图3所示的负载均衡处理方法中的负载均衡节点的功能,也能实现该负载均衡处理方法所具备的有益效果。其中,该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括至少一个与上述功能相对应的模块。
请参阅图5,图5是本发明实施例提供的一种负载均衡处理装置500的结构框图,所述装置包括:第一接收单元501、创建单元502、第一获取单元503、计算单元504和第一选择单元505。
第一接收单元501,用于接收第一客户端的第一创建请求,第一创建请求用于请求为第一客户端创建第一负载均衡实例。
创建单元502,用于为第一客户端创建第一负载均衡实例。
第一获取单元503,用于在运行第一负载均衡实例的第一阶段,按照轮循均衡算法将来自第一客户端的服务请求依次调度给N个服务节点,并获取第一阶段内N个服务节点的运行数据,N为正整数。
计算单元504,用于根据第一阶段内N个服务节点的运行数据计算运行数据的权重。
第一选择单元505,用于在运行第一负载均衡实例的第一阶段内,按照N个服务节点当前的运行数据以及运行数据的权重从N个服务节点中选择目标服务节点处理来自第一客户端的服务请求。
可选的,运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率、CPU处理速率和内存空闲率中的一个或多个。
可选的,计算单元504具体用于:根据第一阶段内N个服务节点中的各个服务节点的运行数据以及运行数据中的各个运行数据的权重,得到第一阶段内N个服务节点中的各个服务节点的性能指标,运行数据中的各个运行数据的权重为未知变量;根据第一阶段内N个服务节点中的各个服务节点的性能指标,得到第一阶段内N个服务节点的性能指标的平均值;以最小化第一阶段内N个服务节点中的各个服务节点的性能指标与第一阶段内N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,目标函数的待优化变量为运行数据中的各个运行数据的权重;优化目标函数,求得运行数据中的各个运行数据的权重的最优解。
可选的,第一选择单元505创建并运行第一负载均衡实例之后,上述负载均衡处理装置还包括:第一提取单元、分类单元和生成单元。
第一提取单元,用于提取第一阶段内第一客户端的服务请求的第一特征信息。
分类单元,用于根据第一特征信息,对第一客户端进行分类。
生成单元,用于生成第一记录,并将第一记录存入共享规格表,第一记录包括第一客户端的用户类型、第一特征信息和第一规格信息,第一规格信息为运行数据的权重的最优解,共享规格表中包括至少一个客户端对应的记录。
可选的,上述负载均衡处理装置还包括:第三接收单元、第二提取单元、第一确定单元、第一查询单元和第二选择单元。
第三接收单元,用于接收第二客户端发送的第二服务请求,第二服务请求对应的第二负载均衡实例与第一负载均衡实例配置了相同的服务节点。
第二提取单元,用于提取第二服务请求的第二特征信息。
第一确定单元,用于根据第二特征信息确定第二客户端的用户类型。
第一查询单元,用于根据共享规格表查询第二客户端的用户类型对应的第二规格信息。
第二选择单元,用于根据第二规格信息中的运行数据的权重从N个服务节点中选择服务节点处理第二服务请求。
可选的,上述负载均衡处理装置还包括:第四接收单元、第三提取单元、第二确定单元、第二查询单元和第三选择单元。
第四接收单元,用于接收第二客户端发送的第二创建请求以及一个或多个服务请求,第二创建请求用于请求创建第三负载均衡实例,第三负载均衡实例与第一负载均衡实例配置相同的服务节点。
第三提取单元,用于提取上述一个或多个服务请求的第三特征信息。
第二确定单元,用于根据第三特征信息确定第二客户端的用户类型。
第二查询单元,用于根据共享规格表查询第二客户端的用户类型对应的第三规格信息。
第三选择单元,用于创建并运行第三负载均衡实例,在运行第三负载均衡实例期间根据第三规格信息中的运行数据的权重从N个服务节点中选择服务节点处理来自第二客户端的服务请求。
结合本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(英文:random access memory,简称:RAM)、闪存、只读存储器(英文:read only memory,简称:ROM)、可擦除可编程只读存储器(英文:erasable programmable rom,简称:EPROM)、电可擦可编程只读存储器(英文:electrically eprom,简称:EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于网络设备中。当然,处理器和存储介质也可以作为分立组件存在于网络设备中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明实施例的保护范围,凡在本发明实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明实施例的保护范围之内。
Claims (10)
1.一种负载均衡处理方法,其特征在于,所述方法包括:
负载均衡节点接收第一客户端的第一创建请求,所述第一创建请求用于请求为所述第一客户端创建第一负载均衡实例;
所述负载均衡节点为所述第一客户端创建所述第一负载均衡实例,并在所述第一负载均衡实例中添加第一监听器和N个服务节点,并定义所述第一负载均衡实例的负载均衡策略和转发规则;所述第一监听器用于查找所述第一负载均衡实例对应的所述N个服务节点;
在所述负载均衡节点运行所述第一负载均衡实例的第一阶段,按照轮循均衡算法将来自所述第一客户端的服务请求依次调度给所述N个服务节点,并获取所述第一阶段内所述N个服务节点的运行数据,N为正整数;所述服务请求包括所述第一客户端的地址信息、所述负载均衡节点的地址信息和所述第一负载均衡实例的地址信息;所述第一负载均衡实例的地址信息用于所述负载均衡节点查看所述第一负载均衡实例对应的所述第一监听器;
所述负载均衡节点根据所述第一阶段内所述N个服务节点的运行数据计算所述运行数据的权重;
所述负载均衡节点在运行所述第一负载均衡实例的第二阶段内,按照所述N个服务节点当前的运行数据以及所述运行数据的权重从所述N个服务节点中选择目标服务节点处理来自所述第一客户端的服务请求。
2.根据权利要求1所述的方法,其特征在于,所述运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建传输控制协议tcp连接速率、中央处理器CPU处理速率和内存空闲率中的一个或多个。
3.根据权利要求2所述的方法,其特征在于,所述负载均衡节点根据所述第一阶段内所述N个服务节点的运行数据计算所述运行数据的权重,包括:
所述负载均衡节点根据所述第一阶段内所述N个服务节点中的各个服务节点的运行数据以及所述运行数据中的各个运行数据的权重,得到所述第一阶段内所述N个服务节点中的各个服务节点的性能指标,所述运行数据中的各个运行数据的权重为未知变量;
所述负载均衡节点根据所述第一阶段内所述N个服务节点中的各个服务节点的性能指标,得到所述第一阶段内所述N个服务节点的性能指标的平均值;
所述负载均衡节点以最小化所述第一阶段内所述N个服务节点中的各个服务节点的性能指标与所述第一阶段内所述N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,所述目标函数的待优化变量为所述运行数据中的各个运行数据的权重;
所述负载均衡节点优化所述目标函数,求得所述运行数据中的各个运行数据的权重的最优解。
4.根据权利要求3所述的方法,其特征在于,所述负载均衡节点根据所述第一阶段内所述N个服务节点的运行数据计算所述运行数据的权重之后,还包括:
所述负载均衡节点提取所述第一阶段内所述第一客户端的服务请求的第一特征信息;
所述负载均衡节点根据所述第一特征信息,对所述第一客户端进行分类;
所述负载均衡节点生成第一记录,并将所述第一记录存入共享规格表,所述第一记录包括所述第一客户端的用户类型、所述第一特征信息和第一规格信息,所述第一规格信息为所述运行数据的权重的最优解,所述共享规格表中包括至少一个客户端对应的记录。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
所述负载均衡节点接收第二客户端发送的第二服务请求,所述第二服务请求对应的第二负载均衡实例与所述第一负载均衡实例配置了相同的服务节点;
所述负载均衡节点提取所述第二服务请求的第二特征信息;
所述负载均衡节点根据所述第二特征信息确定所述第二客户端的用户类型;
所述负载均衡节点根据所述共享规格表查询所述第二客户端的用户类型对应的第二规格信息;
所述负载均衡节点根据所述第二规格信息中的运行数据的权重从所述N个服务节点中选择服务节点处理所述第二服务请求。
6.一种负载均衡处理装置,其特征在于,所述装置包括:
第一接收单元,用于接收第一客户端的第一创建请求,所述第一创建请求用于请求为所述第一客户端创建第一负载均衡实例;
创建单元,用于为所述第一客户端创建第一负载均衡实例,并在所述第一负载均衡实例中添加第一监听器和N个服务节点,并定义所述第一负载均衡实例的负载均衡策略和转发规则;所述第一监听器用于查找所述第一负载均衡实例对应的所述N个服务节点;
第一获取单元,用于在运行所述第一负载均衡实例的第一阶段,按照轮循均衡算法将来自所述第一客户端的服务请求依次调度给所述N个服务节点,并获取所述第一阶段内所述N个服务节点的运行数据,N为正整数;所述服务请求包括所述第一客户端的地址信息、所述负载均衡处理装置的地址信息和所述第一负载均衡实例的地址信息;所述第一负载均衡实例的地址信息用于所述负载均衡处理装置查看所述第一负载均衡实例对应的所述第一监听器;
计算单元,用于根据所述第一阶段内所述N个服务节点的运行数据计算所述运行数据的权重;
第一选择单元,用于在运行所述第一负载均衡实例的第二阶段内,按照所述N个服务节点当前的运行数据以及所述运行数据的权重从所述N个服务节点中选择目标服务节点处理来自所述第一客户端的服务请求。
7.根据权利要求6所述的装置,其特征在于,其特征在于,所述运行数据包括网络流量、接收数据包速率、服务请求处理速率、数据加密及解密的处理速率、新建tcp连接速率和CPU处理速率和内存空闲率中的一个或多个。
8.根据权利要求7所述的装置,其特征在于,所述计算单元,具体用于:
根据所述第一阶段内所述N个服务节点中的各个服务节点的运行数据以及所述运行数据中的各个运行数据的权重,得到所述第一阶段内所述N个服务节点中的各个服务节点的性能指标,所述运行数据中的各个运行数据的权重为未知变量;
根据所述第一阶段内所述N个服务节点中的各个服务节点的性能指标,得到所述第一阶段内所述N个服务节点的性能指标的平均值;
以最小化所述第一阶段内所述N个服务节点中的各个服务节点的性能指标与所述第一阶段内所述N个服务节点的性能指标的平均值的均方差为目标,建立目标函数,所述目标函数的待优化变量为所述运行数据中的各个运行数据的权重;
优化所述目标函数,求得所述运行数据中的各个运行数据的权重的最优解。
9.一种服务器,其特征在于,包括处理器、通信设备和存储器,所述处理器、通信设备和存储器相互连接,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述应用程序代码,执行如权利要求1至5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至5任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910182511.2A CN109831524B (zh) | 2019-03-11 | 2019-03-11 | 一种负载均衡处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910182511.2A CN109831524B (zh) | 2019-03-11 | 2019-03-11 | 一种负载均衡处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109831524A CN109831524A (zh) | 2019-05-31 |
CN109831524B true CN109831524B (zh) | 2023-04-18 |
Family
ID=66868846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910182511.2A Active CN109831524B (zh) | 2019-03-11 | 2019-03-11 | 一种负载均衡处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109831524B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110461011B (zh) * | 2019-07-08 | 2022-04-05 | 西安电子科技大学 | 一种基于意图驱动的均衡通信的负载信息处理方法 |
CN111131486B (zh) * | 2019-12-30 | 2023-04-07 | 北京三快在线科技有限公司 | 执行节点的负载调节方法、装置、服务器及存储介质 |
CN111343266B (zh) * | 2020-02-24 | 2022-10-11 | 中国工商银行股份有限公司 | 路由决策方法及装置 |
CN111427660B (zh) * | 2020-03-19 | 2023-07-25 | 北京奇艺世纪科技有限公司 | 上传机调度方法及装置 |
CN111464456B (zh) * | 2020-03-31 | 2023-08-29 | 杭州迪普科技股份有限公司 | 一种流量控制方法及装置 |
CN111901380B (zh) * | 2020-06-29 | 2023-04-28 | 浪潮电子信息产业股份有限公司 | 一种请求处理方法、装置、设备及存储介质 |
CN114205361B (zh) * | 2021-12-08 | 2023-10-27 | 聚好看科技股份有限公司 | 一种负载均衡方法以及服务器 |
CN114500578A (zh) * | 2021-12-27 | 2022-05-13 | 天翼云科技有限公司 | 分布式存储系统负载均衡调度方法、装置及存储介质 |
CN114900526B (zh) * | 2022-04-28 | 2024-04-16 | 京东科技信息技术有限公司 | 负载均衡方法及系统、计算机存储介质、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6282569B1 (en) * | 1993-09-11 | 2001-08-28 | International Business Machines Corp. | Name server computer having a load levelling facility to spread the load from client computers across a plurality of server computers |
CN104023088A (zh) * | 2014-06-28 | 2014-09-03 | 山东大学 | 一种应用于分布式文件系统的存储服务器选择方法 |
CN106533978A (zh) * | 2016-11-24 | 2017-03-22 | 东软集团股份有限公司 | 一种网络负载均衡方法及系统 |
CN107426332A (zh) * | 2017-08-10 | 2017-12-01 | 华南理工大学 | 一种web服务器集群的负载均衡方法及系统 |
CN107590001A (zh) * | 2017-09-08 | 2018-01-16 | 北京京东尚科信息技术有限公司 | 负载均衡方法及装置、存储介质、电子设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8249763B2 (en) * | 2006-03-20 | 2012-08-21 | General Electric Company | Method and computer software code for uncoupling power control of a distributed powered system from coupled power settings |
US9363312B2 (en) * | 2010-07-28 | 2016-06-07 | International Business Machines Corporation | Transparent header modification for reducing serving load based on current and projected usage |
CN103281367B (zh) * | 2013-05-22 | 2016-03-02 | 北京蓝汛通信技术有限责任公司 | 一种负载均衡方法及装置 |
US20150254248A1 (en) * | 2014-03-07 | 2015-09-10 | Printeron Inc. | System for suggesting network resource for use by a network terminal based on network resource ranking |
US9917781B2 (en) * | 2014-06-05 | 2018-03-13 | KEMP Technologies Inc. | Methods for intelligent data traffic steering |
CN107800744B (zh) * | 2016-09-06 | 2021-06-18 | 北京金山云网络技术有限公司 | 一种服务请求转发方法、装置及系统 |
CN108667878A (zh) * | 2017-03-31 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 服务器负载均衡方法及装置、存储介质、电子设备 |
CN109308221B (zh) * | 2018-08-02 | 2022-06-10 | 南京邮电大学 | 一种基于WebSocket长连接的Nginx动态负载均衡方法 |
CN109120715A (zh) * | 2018-09-21 | 2019-01-01 | 华南理工大学 | 一种云环境下动态负载均衡方法 |
-
2019
- 2019-03-11 CN CN201910182511.2A patent/CN109831524B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6282569B1 (en) * | 1993-09-11 | 2001-08-28 | International Business Machines Corp. | Name server computer having a load levelling facility to spread the load from client computers across a plurality of server computers |
CN104023088A (zh) * | 2014-06-28 | 2014-09-03 | 山东大学 | 一种应用于分布式文件系统的存储服务器选择方法 |
CN106533978A (zh) * | 2016-11-24 | 2017-03-22 | 东软集团股份有限公司 | 一种网络负载均衡方法及系统 |
CN107426332A (zh) * | 2017-08-10 | 2017-12-01 | 华南理工大学 | 一种web服务器集群的负载均衡方法及系统 |
CN107590001A (zh) * | 2017-09-08 | 2018-01-16 | 北京京东尚科信息技术有限公司 | 负载均衡方法及装置、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109831524A (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109831524B (zh) | 一种负载均衡处理方法及装置 | |
CN110602156A (zh) | 一种负载均衡调度方法及装置 | |
CN109218355B (zh) | 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法 | |
CN109618002B (zh) | 一种微服务网关优化方法、装置及存储介质 | |
Chen et al. | Reinforcement learning–based QoS/QoE‐aware service function chaining in software‐driven 5G slices | |
CN103179217B (zh) | 一种用于web应用服务器群组的负载均衡方法和装置 | |
US8706864B1 (en) | Behavior monitoring and compliance for multi-tenant resources | |
CN110958281B (zh) | 基于物联网的数据传输方法及通信装置 | |
CN109451002B (zh) | 一种cdn节点的选择方法及设备 | |
CN106657379A (zh) | 一种nginx服务器负载均衡的实现方法及系统 | |
MX2015006471A (es) | Metodo y aparato para controlar la utilizacion en una aplicacion de software horizontalmente escalado. | |
CN110365748A (zh) | 业务数据的处理方法和装置、存储介质及电子装置 | |
EP1472846A1 (en) | Method and apparatus for web farm traffic control | |
CN109933431B (zh) | 一种智能的客户端负载均衡方法及系统 | |
CN110198332B (zh) | 内容分发网络节点的调度方法、装置及存储介质 | |
CN110708256A (zh) | Cdn调度方法、装置、网络设备及存储介质 | |
CN110515731A (zh) | 一种数据处理方法、装置及系统 | |
CN112003660A (zh) | 一种网内资源的量纲测量方法、算力调度方法及存储介质 | |
EP1473897B1 (en) | Information processing device, information processing method, and computer program | |
CN114003337A (zh) | 访问请求的分配方法及装置 | |
Kadhim et al. | Hybrid load-balancing algorithm for distributed fog computing in internet of things environment | |
CN107659511B (zh) | 一种过载控制方法、主机和存储介质以及程序产品 | |
CN109670691A (zh) | 用于客服队列管理及客服分配的方法、设备与客服系统 | |
CN114531448A (zh) | 算力确定方法、装置及算力共享系统 | |
CN112738247B (zh) | 基于多层空间调度的云计算资源分配系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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 |