CN117714452A - 一种流量负载均衡方法、***及装置 - Google Patents

一种流量负载均衡方法、***及装置 Download PDF

Info

Publication number
CN117714452A
CN117714452A CN202311723291.2A CN202311723291A CN117714452A CN 117714452 A CN117714452 A CN 117714452A CN 202311723291 A CN202311723291 A CN 202311723291A CN 117714452 A CN117714452 A CN 117714452A
Authority
CN
China
Prior art keywords
node
utilization rate
resources
resource
determining
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.)
Pending
Application number
CN202311723291.2A
Other languages
English (en)
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.)
Moore Threads Technology Co Ltd
Original Assignee
Moore Threads Technology 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 Moore Threads Technology Co Ltd filed Critical Moore Threads Technology Co Ltd
Priority to CN202311723291.2A priority Critical patent/CN117714452A/zh
Publication of CN117714452A publication Critical patent/CN117714452A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开涉及一种流量负载均衡方法、***及装置,所述方法包括:获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。本公开实施例可尽可能将负载均衡地分布到各个节点上,延长各个节点的使用寿命。

Description

一种流量负载均衡方法、***及装置
技术领域
本公开涉及通信技术领域,尤其涉及一种流量负载均衡方法、***及装置。
背景技术
目前流量负载均衡***主要是在负载均衡器处对流量进行随机或者轮询转发,尽可能让流量平均地流向各个节点;或者是统计各个节点的流量,之后根据流量分布来进行流量的切换;或者是通过收集各个节点的资源利用率,然后判断其是否超过参数阈值来决定流量是否转发到该节点。
上述技术从流量角度去执行固定策略(如随机或轮询)或者基于流量分布进行流量分发,忽视了节点本身的硬件性能差异,无法让节点按自身的能力去均衡地负载业务流量;上述技术从资源利用率角度通过判断各个节点的资源利用率是否超过参数阈值来决定之后的流量是否转发到该节点,则可能导致在流量稳定后一部分节点一直运行在较高负载(但是资源利用率没有超过阈值),而另一部分节点运行在较低负载下,无法使这些节点的负载均匀,那么将会使得一直运行在较高负载的节点寿命缩短。
发明内容
本公开提出了一种流量负载均衡方法、***及装置,能够尽可能将负载均衡地分布到各个节点上,延长各个节点的使用寿命。
根据本公开的一方面,提供了一种流量负载均衡方法,包括:获取指定时间段内采集的时序数据,所述时序据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。
在一种可能的实现方式中,所述基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,包括:基于所述时序数据,确定所述各个采集时刻的第一节点的第一资源的利用率,所述第一节点表示任意一个节点,所述第一资源表示任意一种类型资源;根据所述各个采集时刻的第一节点的第一资源的利用率,确定所述指定时间段内所述第一资源在所述第一节点的平均利用率;根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况。
在一种可能的实现方式中,所述根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况,包括:将所述指定时间段内所述第一资源在所述第一节点的平均利用率占所述指定时间段内所述第一资源在各个节点的平均利用率之和的比例,确定为所述指定时间段内所述第一资源的利用率在第一节点的分布比例;根据所述指定时间段内所述第一资源的利用率在各个节点的分布比例,确定所述第一资源的利用率分布情况。
在一种可能的实现方式中,所述根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度,包括:基于各种类型资源的利用率分布情况,确定所述指定时间段内各种类型资源的利用率在第一节点的分布比例,所述第一节点表示任意一个节点;根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度。
在一种可能的实现方式中,所述根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度,包括:根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例中的最大值,确定所述第一节点的资源空闲程度,所述最大值与所述资源空闲程度负相关。
在一种可能的实现方式中,所述根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率,包括:针对第一节点,将所述第一节点的资源空闲程度占各个节点的资源空闲程度之和的比例,确定为将流量转发到所述第一节点的概率,所述第一节点表示任意一个节点。
在一种可能的实现方式中,各种类型资源至少包括CPU、GPU、内存和网络带宽中的一者或多者。
根据本公开的一方面,提供了一种流量负载均衡***,所述***包括数据采集模块、数据存储模块、数据分析模块和流量转发决策模块;其中,
所述数据采集模块,部署在各个节点上,用于按照第一时间间隔采集所部署节点的各种类型资源的利用率,并将采集到的利用率上报至所述数据存储模块;
所述数据存储模块,用于根据采集时刻、采集节点和资源类型存储所述数据采集模块上报的利用率;
所述数据分析模块,用于按照第二时间间隔从所述数据存储模块获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率,并将所述概率发送至所述流量转发决策模块;
所述流量转发决策模块,部署在负载均衡器上,用于按照所述概率向各个节点转发流量。
根据本公开的一方面,提供了一种流量负载均衡装置,包括:
获取模块,用于获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;
第一确定模块,用于基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;
第二确定模块,用于根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;
第三确定模块,用于根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。
在一种可能的实现方式中,所述第一确定模块还用于:
基于所述时序数据,确定所述各个采集时刻的第一节点的第一资源的利用率,所述第一节点表示任意一个节点,所述第一资源表示任意一种类型资源;
根据所述各个采集时刻的第一节点的第一资源的利用率,确定所述指定时间段内所述第一资源在所述第一节点的平均利用率;
根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况。
在一种可能的实现方式中,所述根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况,包括:
将所述指定时间段内所述第一资源在所述第一节点的平均利用率占所述指定时间段内所述第一资源在各个节点的平均利用率之和的比例,确定为所述指定时间段内所述第一资源的利用率在第一节点的分布比例;
根据所述指定时间段内所述第一资源的利用率在各个节点的分布比例,确定所述第一资源的利用率分布情况。
在一种可能的实现方式中,所述第二确定模块还用于:
基于各种类型资源的利用率分布情况,确定所述指定时间段内各种类型资源的利用率在第一节点的分布比例,所述第一节点表示任意一个节点;
根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度。
在一种可能的实现方式中,所述根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度,包括:
根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例中的最大值,确定所述第一节点的资源空闲程度,所述最大值与所述资源空闲程度负相关。
在一种可能的实现方式中,所述第三确定模块还用于:
针对第一节点,将所述第一节点的资源空闲程度占各个节点的资源空闲程度之和的比例,确定为将流量转发到所述第一节点的概率,所述第一节点表示任意一个节点。
在一种可能的实现方式中,各种类型资源至少包括CPU、GPU、内存和网络带宽中的一者或多者。
根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
在本公开实施例中,基于所有节点的资源利用率分布情况来调整流量转发到各个节点的概率,尽可能将负载均衡地分布到各个节点上,最大限度地根据各个节点自身能力来均衡地转发流量,延长了各个节点的使用寿命。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1示出根据本公开实施例的流量负载均衡***的架构示意图。
图2示出根据本公开实施例的流量负载均衡***的运作流程示意图。
图3示出本公开实施例的流量负载均衡方法的流程图。
图4示出根据本公开实施例的流量负载均衡装置的框图。
图5示出根据本公开实施例的一种电子设备1900的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
各个节点的硬件性能会有差异,相关技术中无法做到让节点按照自身的能力去均衡地负载业务流量,且仅通过比较节点的资源利用率和参数阈值来决定流量是否转发到该节点,无法使这些节点的负载均衡,将会使得一直运行在较高负载的节点寿命缩短。
本公开实施例提供一种流量负载均衡方法,基于所有节点的资源利用率分布情况来调整流量转发到各个节点的概率,尽可能将负载均衡地分布到各个节点上,最大限度地根据各个节点自身能力来均衡地转发流量,延长了各个节点的使用寿命。
图1示出根据本公开实施例的流量负载均衡***的架构示意图。如图1所示,所述***包括数据采集模块、数据存储模块、数据分析模块和流量转发决策模块。
数据采集模块部署在各个节点上,如图1所示,节点1至节点H均部署有数据采集模块,H表示节点的数量,H取正整数。例如,H可以为大于或等于2的整数。其中,节点可以为无线接入点、交换机、手机、计算机、服务器或者GPU(Graphics Processing Unit,图形处理器)等,本公开实施例对节点不做限制。其中,计算机、服务器等类型的节点可以包括GPU。即,GPU可以是节点或者节点中的一个组件。
数据采集模块用于按照第一时间间隔采集所部署节点的各种类型资源的利用率,并将采集到的利用率上报至数据存储模块。如图1所示,部署在节点1上的数据采集模块可以按照第一时间间隔采集节点1的各种类型资源的利用率,并将采集到的利用率上报至数据存储模块,同理,部署在节点2上的数据采集模块可以按照第一时间间隔采集节点2的各种类型资源的利用率,并将采集到的利用率上报至数据存储模块,以此类推。
其中,各种类型资源可以至少包括CPU(Central Processing Unit,中央处理器)、GPU、内存和网络带宽等类型的资源中的一者或多者,本公开实施例对采集资源的类型不做限制,能够反映节点的性能即可。相应地,指定时间段内采集的时序数据可以包括CPU利用率、GPU利用率、内存利用率、网络带宽利用率等中的一者或多者。第一时间间隔可以表示数据采集周期。举例来说,第一时间间隔可以为1分钟或者5分钟等,可以根据需要进行设置,本公开实施例不做限制。也就是说,数据采集模块可以周期性采集所属节点的内存和网络带宽等类型的资源的利用率,并上报至数据存储模块。
数据存储模块可以部署在云服务器上,从而实现云存储。每个节点都会通过数据采集模块不断地将各种类型的资源的利用率上报到数据存储模块进行持久化。数据存储模块可以根据采集时刻、采集节点和资源类型存储所述数据采集模块上报的利用率。
数据分析模块可以部署在云服务器上,从而实现云计算。数据分析模块可以按照第二时间间隔从数据存储模块获取指定时间段内各个采集时刻的各个节点的各种类型资源的利用率。
其中,第二时间间隔可以表示概率计算周期,可以视作整个流量负载均衡***的灵敏度。其中,灵敏度还可以称为敏感度等,在此不做限定。指定时间段与第二时间间隔相关,指定时间段的时长为所述第二时间间隔。在一个示例中,所述指定时间段的结束时刻为数据分析模块从数据存储模块获取利用率的时刻。基于第一时间间隔和第二时间间隔可以确定指定时间段内的数据点数(即每个节点上利用率的采集次数,代表了采集时刻的数量)。在一个示例中,第一时间间隔为1分钟,第二时间间隔也为1分钟,则数据点数为1,代表指定时间段内每个节点上采集了1次利用率(需要说明的是每次采集了所有需要的类型的资源的利用率),也就是说指定时间段内的采集时刻的数量为1。在又一示例中,第一时间间隔为1分钟,第二时间间隔为10分钟,则数据点数为10,代表指定时间段内每个节点上采集了10次利用率,也就是说指定时间段内的采集时刻的数量为10。第二时间间隔越大,***灵敏度越低;第二时间间隔越小,***灵敏度越高;第二时间间隔对应的数据点数越多,计算资源的损耗也相对越高;第二时间间隔对应的数据点数越少,计算资源的损耗也相对越低。在本公开实施例中,可以根据需要设置第一时间间隔和第二时间间隔,设置方式不做限制。
数据存储模块在获取到利用率之后可以通过本公开实施例提供的流量负载均衡方法计算将流量转发到各个节点的概率,计算过程会在后文结合图3进行详细说明,这里不再赘述。数据存储模块可以将所述概率发送至流量转发决策模块。
流量转发决策模块可以部署在负载均衡器上。这样,流量转发决策模块接收到新的概率之后,负载均衡器在需要向节点转发流量时,可以按照新的概率向各个节点转发流量,从而尽可能将负载均衡地分布到各个节点上,最大限度地根据各个节点自身能力来均衡地转发流量,延长了各个节点的使用寿命。
图2示出根据本公开实施例的流量负载均衡***的运作流程示意图。在图2所示的示例中,在整个流量负载均衡***开始工作时,流量转发到各个节点的概率可以相同。当流量转发到节点后,各节点的资源利用率可能会发生变化。如图2所示,图1所示的流量负载均衡***的运作流程可以包括:负载均衡器将外界流量按概率转发到各个节点;各个节点周期性采集各种类型资源的利用率;各个节点将采集到的利用率发送到数据存储模块中进行持久化;数据分析模块周期性从数据存储模块中获取利用率计算流量转发到各个节点的概率;最后数据分析模块将概率发送到负载均衡器,以便负载均衡器进行应用。
可以理解的是,上述节点采集利用率的周期可以为第一时间间隔;上述数据分析模块计算概率的周期可以为第二时间间隔;各个节点可以通过其上部署的数据采集模块采集利用率;负载均衡器可以通过其上部署的流量转发决策模块进行流量转发;负载均衡器进行应用可以指负载均衡器继续执行图2所示的运作流程。
图3示出本公开实施例的流量负载均衡方法的流程图。在一种可能的实现方式中,所述流量负载均衡方法可以应用于数据分析模块。所述数据分析模块可以部署在服务器等电子设备执行,例如可以部署在云服务器上。如图3所示,所述方法可以包括:
步骤S11,获取指定时间段内采集的时序数据。
其中,指定时间段可以为当前时刻之前的任意一个时间段。例如,当前时刻之前的1分钟或者当前时刻之前的10分钟。在一个示例中,在数据分析模块按照第二时间间隔从数据存储模块获取利用率的情况下,指定时间段的时长可以与第二时间间隔相同,且指定时间段的结束时刻可以为当前时刻。
指定时间段内采集的时序数据可以用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率。各个节点可以周期性(例如可以按照第一时间间隔)采集本地各种类型的资源的利用率。数据分析模块可以获取到采集时刻在指定时间段内的各个节点的各种类型的资源的利用率,这些利用率基于采集时刻进行排列形成了指定时间段内采集的时序数据。在一个示例中,假设指定时间段内包括采集时刻1,节点包括节点1和节点2,资源类型包括类型1和类型2,则指定时间段内采集的时序数据为:采集时刻1采集的节点1的类型1的资源的利用率、采集时刻1采集的节点1的类型2的资源的利用率、采集时刻1采集的节点2的类型1的资源的利用率和采集时刻1采集的节点2的类型2的资源的利用率。其中,各种类型资源可以至少包括CPU、GPU、内存和网络带宽等中的一者或多者。
步骤S12,基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况。
其中,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例。
在一种可能的实现方式中,步骤S12可以包括:基于所述时序数据,确定所述各个采集时刻的第一节点的第一资源的利用率;根据所述各个采集时刻的第一节点的第一资源的利用率,确定所述指定时间段内所述第一资源在所述第一节点的平均利用率;根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况。
其中,第一节点可以表示任意一个节点,第一资源可以表示任意一种类型资源。所述各个采集时刻可以表示所述指定时间段内的各个采集时刻。在一个示例中,可以通过公式一确定指定时间段内第一资源在第一节点的平均利用率。
其中,表示指定时间段内编号为k的资源在编号为h的节点的平均利用率。/>表示指定时间段内第n个采集时刻的编号为h的节点的编号为k的资源的利用率,n的取值为从1到N的整数,N表示指定时间段内采集时刻的数量(也可以称为指定时间段内的数据点数)。/>表示指定时间段内所有采集时刻的编号为h的节点的编号为k的资源的利用率之和。其中,资源的编号从1开始,编号为k的资源表示第k种类型的资源;节点的编号从1开始,编号为h的节点表示第h个节点。其中,1≤k≤K,1≤h≤H,K表示资源类型的数量,H表示节点的数量。
在确定了指定时间段内编号为k的资源在编号为h的节点的平均利用率的基础上,可以确定指定时间段内编号为k的资源的利用率分布情况,即指定时间段内编号为k的资源的利用率在各个节点的分布比例。
在一种可能的实现方式中,所述根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况可以包括:将所述指定时间段内所述第一资源在所述第一节点的平均利用率占所述指定时间段内所述第一资源在各个节点的平均利用率之和的比例,确定为所述指定时间段内所述第一资源的利用率在第一节点的分布比例;根据所述指定时间段内所述第一资源的利用率在各个节点的分布比例,确定所述第一资源的利用率分布情况。
在一个示例中,可以通过公式二确定第一资源的利用率分布情况。
其中,表示指定时间段内编号为k的资源在编号为i的节点的平均利用率,i的取值为从1到H的整数,H表示节点的数量。/>表示指定时间段内编号为k的资源在所有节点的平均利用率之和。可见,r k为指定时间段内编号为k的资源在编号为h的节点的平均利用率占其在所有节点的平均利用率之和的比例,代表了指定时间段内编号为k的资源的利用率在编号为h的节点的分布比例。指定时间段内编号为k的资源的利用率在各个节点的分布比例就组成了指定时间段内编号为k的资源的利用率分布情况。
步骤S13,根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度。
一个节点上各种类型的资源的利用率分布比例可以体现该节点上哪种类型的资源在整个***中被占用的比较多,哪种类型的资源在整个***中被占用的比较少。因此,根据一个节点上各种类型的资源的利用率分布比例,可以确定该节点的资源空闲程度。
在一种可能的实现方式中,步骤S13可以包括:基于各种类型资源的利用率分布情况,确定所述指定时间段内各种类型资源的利用率在第一节点的分布比例,所述第一节点表示任意一个节点;根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度。
在一种可能的实现方式中,所述根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度,包括:根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例中的最大值,确定所述第一节点的资源空闲程度,所述最大值与所述资源空闲程度负相关。
在一个示例中,可以通过公式三确定第一节点的资源空闲程度。
s=1-max1≤k≤K rhk公式三
其中,rhk指定时间段内编号为k的资源的利用率在编号为h的节点的分布比例,k的取值为从1到K的整数,K表示资源类型的数量。max1≤k≤K rhk表示指定时间段内各个资源的利用率在编号为h的节点的分布比例中的最大值。sh表示指定时间段内编号为h的节点的空闲程度。可以理解的是,max1≤k≤Krhk越大,sh越小;max1≤k≤Krhk越小,sh越大。
步骤S14,根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。
可以理解的是,资源空闲程度与将流量转发到各个节点的概率正相关,也就是说,若一个节点的资源空闲程度较大,则将流量转发到这个节点的概率也较大,若一个节点的资源空闲程度较小,则将流量转发到这个节点的概率也较小。
在一种可能的实现方式中,步骤S14可以包括:针对第一节点,将所述第一节点的资源空闲程度占各个节点的资源空闲程度之和的比例,确定为将流量转发到所述第一节点的概率。
在一个示例中,可以通过公式四确定将流量转发到各个节点的概率。
其中,ph表示将流量转发到编号为h的节点的概率。sh表示编号为h的节点的资源空闲程度。表示各个节点的资源空闲程度之和。可见,ph可以为编号为h的节点的资源空闲程度占各个节点的资源空闲程度之和的比例。
当数据分析模块计算出流量转发到各个节点的概率之后,可以将其发送到负载均衡器的流量转发决策模块进行应用,从而使后续外界流量更倾向于转发到整体资源利用率相对于所有节点的比例较低的节点上。
在本公开实施例中,基于所有节点的资源利用率分布情况来调整流量转发到各个节点的概率,尽可能将负载均衡地分布到各个节点上,最大限度地根据各个节点自身能力来均衡地转发流量,延长了各个节点的使用寿命。
在一个示例中,基于所有节点的GPU利用率分布情况来调整流量转发到各个节点的概率,尽可能将负载均衡地分布到各个节点上,最大限度地根据各个节点自身能力来均衡地转发流量,能够延长GPU的使用寿命。
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
此外,本公开还提供了流量负载均衡装置、电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种流量负载均衡方法,相应技术方案和描述和参见方法部分的相应记载,不再赘述。
图4示出根据本公开实施例的流量负载均衡装置的框图。如图4所示,装置40可以包括:
获取模块41,用于获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;
第一确定模块42,用于基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;
第二确定模块43,用于根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;
第三确定模块44,用于根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。
在一种可能的实现方式中,所述第一确定模块还用于:
基于所述时序数据,确定所述各个采集时刻的第一节点的第一资源的利用率,所述第一节点表示任意一个节点,所述第一资源表示任意一种类型资源;
根据所述各个采集时刻的第一节点的第一资源的利用率,确定所述指定时间段内所述第一资源在所述第一节点的平均利用率;
根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况。
在一种可能的实现方式中,所述根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况,包括:
将所述指定时间段内所述第一资源在所述第一节点的平均利用率占所述指定时间段内所述第一资源在各个节点的平均利用率之和的比例,确定为所述指定时间段内所述第一资源的利用率在第一节点的分布比例;
根据所述指定时间段内所述第一资源的利用率在各个节点的分布比例,确定所述第一资源的利用率分布情况。
在一种可能的实现方式中,所述第二确定模块还用于:
基于各种类型资源的利用率分布情况,确定所述指定时间段内各种类型资源的利用率在第一节点的分布比例,所述第一节点表示任意一个节点;
根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度。
在一种可能的实现方式中,所述根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度,包括:
根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例中的最大值,确定所述第一节点的资源空闲程度,所述最大值与所述资源空闲程度负相关。
在一种可能的实现方式中,所述第三确定模块还用于:
针对第一节点,将所述第一节点的资源空闲程度占各个节点的资源空闲程度之和的比例,确定为将流量转发到所述第一节点的概率,所述第一节点表示任意一个节点。
在一种可能的实现方式中,各种类型资源至少包括CPU、GPU、内存和网络带宽中的一者或多者。
在本公开实施例中,基于所有节点的资源利用率分布情况来调整流量转发到各个节点的概率,尽可能将负载均衡地分布到各个节点上,最大限度地根据各个节点自身能力来均衡地转发流量,延长了各个节点的使用寿命。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
电子设备可以被提供为服务器或其它形态的设备。
图5示出根据本公开实施例的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图5,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作***,例如微软服务器操作***(Windows ServerTM),苹果公司推出的基于图形用户界面操作***(Mac OSXTM),多用户多进程的计算机操作***(UnixTM),自由和开放原代码的类Unix操作***(LinuxTM),开放原代码的类Unix操作***(FreeBSDTM)或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。
本公开可以是***、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
若本申请技术方案涉及个人信息,应用本申请技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本申请技术方案涉及灵敏个人信息,应用本申请技术方案的产品在处理灵敏个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (11)

1.一种流量负载均衡方法,其特征在于,包括:
获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;
基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;
根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;
根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。
2.根据权利要求1所述的方法,其特征在于,所述基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,包括:
基于所述时序数据,确定所述各个采集时刻的第一节点的第一资源的利用率,所述第一节点表示任意一个节点,所述第一资源表示任意一种类型资源;
根据所述各个采集时刻的第一节点的第一资源的利用率,确定所述指定时间段内所述第一资源在所述第一节点的平均利用率;
根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况。
3.根据权利要求2所述的方法,其特征在于,所述根据所述指定时间段内所述第一资源在各个节点的平均利用率,确定所述指定时间段内所述第一资源的利用率分布情况,包括:
将所述指定时间段内所述第一资源在所述第一节点的平均利用率占所述指定时间段内所述第一资源在各个节点的平均利用率之和的比例,确定为所述指定时间段内所述第一资源的利用率在第一节点的分布比例;
根据所述指定时间段内所述第一资源的利用率在各个节点的分布比例,确定所述第一资源的利用率分布情况。
4.根据权利要求1所述的方法,其特征在于,所述根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度,包括:
基于各种类型资源的利用率分布情况,确定所述指定时间段内各种类型资源的利用率在第一节点的分布比例,所述第一节点表示任意一个节点;
根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度。
5.根据权利要求4所述的方法,其特征在于,所述根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例,确定所述第一节点的资源空闲程度,包括:
根据所述指定时间段内各种类型资源的利用率在所述第一节点的分布比例中的最大值,确定所述第一节点的资源空闲程度,所述最大值与所述资源空闲程度负相关。
6.根据权利要求1所述的方法,其特征在于,所述根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率,包括:
针对第一节点,将所述第一节点的资源空闲程度占各个节点的资源空闲程度之和的比例,确定为将流量转发到所述第一节点的概率,所述第一节点表示任意一个节点。
7.根据权利要求1至6中任意一项所述的方法,其特征在于,各种类型资源至少包括CPU、GPU、内存和网络带宽中的一者或多者。
8.一种流量负载均衡***,其特征在于,所述***包括数据采集模块、数据存储模块、数据分析模块和流量转发决策模块;其中,
所述数据采集模块,部署在各个节点上,用于按照第一时间间隔采集所部署节点的各种类型资源的利用率,并将采集到的利用率上报至所述数据存储模块;
所述数据存储模块,用于根据采集时刻、采集节点和资源类型存储所述数据采集模块上报的利用率;
所述数据分析模块,用于按照第二时间间隔从所述数据存储模块获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率,并将所述概率发送至所述流量转发决策模块;
所述流量转发决策模块,部署在负载均衡器上,用于按照所述概率向各个节点转发流量。
9.一种流量负载均衡装置,其特征在于,包括:
获取模块,用于获取指定时间段内采集的时序数据,所述时序数据用于指示所述指定时间段内各个采集时刻的各个节点的各种类型资源的利用率;
第一确定模块,用于基于所述时序数据,确定所述指定时间段内各种类型资源的利用率分布情况,任意一种类型资源的利用率分布情况表示所述指定时间段内该种类型资源的利用率在各个节点的分布比例;
第二确定模块,用于根据各种类型资源的利用率分布情况,确定各个节点的资源空闲程度;
第三确定模块,用于根据各个节点的资源空闲程度,确定将流量转发到各个节点的概率。
10.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至7中任意一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至7中任意一项所述的方法。
CN202311723291.2A 2023-12-14 2023-12-14 一种流量负载均衡方法、***及装置 Pending CN117714452A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311723291.2A CN117714452A (zh) 2023-12-14 2023-12-14 一种流量负载均衡方法、***及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311723291.2A CN117714452A (zh) 2023-12-14 2023-12-14 一种流量负载均衡方法、***及装置

Publications (1)

Publication Number Publication Date
CN117714452A true CN117714452A (zh) 2024-03-15

Family

ID=90154865

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311723291.2A Pending CN117714452A (zh) 2023-12-14 2023-12-14 一种流量负载均衡方法、***及装置

Country Status (1)

Country Link
CN (1) CN117714452A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102882984A (zh) * 2012-10-24 2013-01-16 曲阜师范大学 一种云计算平台的资源负载均衡方法
WO2016045515A1 (zh) * 2014-09-23 2016-03-31 同济大学 基于用户满意度的云任务调度算法
CN109831468A (zh) * 2017-11-23 2019-05-31 北京金山云网络技术有限公司 负载均衡方法、装置、电子设备及存储介质
CN110780998A (zh) * 2019-09-29 2020-02-11 武汉大学 基于Kubernetes的动态负载均衡资源调度方法
CN112506643A (zh) * 2020-10-12 2021-03-16 苏州浪潮智能科技有限公司 一种分布式***的负载均衡方法、装置及电子设备
CN113032112A (zh) * 2019-12-25 2021-06-25 上海商汤智能科技有限公司 资源调度方法及装置、电子设备和存储介质
CN114518959A (zh) * 2022-02-21 2022-05-20 中国联合网络通信集团有限公司 基于分布式的节点资源负载均衡方法、装置及电子设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102882984A (zh) * 2012-10-24 2013-01-16 曲阜师范大学 一种云计算平台的资源负载均衡方法
WO2016045515A1 (zh) * 2014-09-23 2016-03-31 同济大学 基于用户满意度的云任务调度算法
CN109831468A (zh) * 2017-11-23 2019-05-31 北京金山云网络技术有限公司 负载均衡方法、装置、电子设备及存储介质
CN110780998A (zh) * 2019-09-29 2020-02-11 武汉大学 基于Kubernetes的动态负载均衡资源调度方法
CN113032112A (zh) * 2019-12-25 2021-06-25 上海商汤智能科技有限公司 资源调度方法及装置、电子设备和存储介质
WO2021128737A1 (zh) * 2019-12-25 2021-07-01 上海商汤智能科技有限公司 资源调度方法及装置、电子设备和存储介质
CN112506643A (zh) * 2020-10-12 2021-03-16 苏州浪潮智能科技有限公司 一种分布式***的负载均衡方法、装置及电子设备
CN114518959A (zh) * 2022-02-21 2022-05-20 中国联合网络通信集团有限公司 基于分布式的节点资源负载均衡方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN109981744B (zh) 数据的分发方法、装置、存储介质及电子设备
CN110852882B (zh) 用于区块链网络的分组共识方法、装置、设备和介质
CN110213620B (zh) 带宽分配方法及装置
US11150999B2 (en) Method, device, and computer program product for scheduling backup jobs
CN111355814B (zh) 一种负载均衡方法、装置及存储介质
KR20180047070A (ko) 동적인 에지 컴퓨팅을 수행하는 방법 및 장치
CN112799793B (zh) 调度方法及装置、电子设备和存储介质
KR20230041031A (ko) 전력 제어 방법, 장치, 통신 노드 및 저장 매체
CN113760982A (zh) 一种数据处理方法和装置
CN108696554B (zh) 负载均衡方法和装置
CN117714452A (zh) 一种流量负载均衡方法、***及装置
CN114745276B (zh) 交换机带宽调整方法、装置、电子设备和计算机可读介质
CN116232884A (zh) 代理实例管理方法、装置、电子设备及存储介质
EP2930617A1 (en) Resource management method and device
CN110134547B (zh) 一种基于中间件的重复数据删除方法和相关装置
CN110933122B (zh) 管理服务器的方法、设备和计算机存储介质
RU2602347C1 (ru) Способ оценки эффективности информационного обмена системы связи
CN112749204B (zh) 一种读取数据的方法和装置
CN110418359B (zh) 移动通信网络范围扩展偏置的调整方法及装置
RU2685030C2 (ru) Способ оценки эффективности информационного обмена системы связи
CN111898061A (zh) 搜索网络的方法、装置、电子设备和计算机可读介质
CN113472565B (zh) 服务器功能的扩容方法、装置、设备和计算机可读介质
CN116760785B (zh) 带宽分配方法、装置、电子设备及存储介质
CN116055496B (zh) 一种监控数据采集方法、装置、电子设备及存储介质
US20230236795A1 (en) Data processing method implemented at edge switch, electronic device, and program product

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