CN112118314A - 负载均衡方法和装置 - Google Patents
负载均衡方法和装置 Download PDFInfo
- Publication number
- CN112118314A CN112118314A CN202010983678.1A CN202010983678A CN112118314A CN 112118314 A CN112118314 A CN 112118314A CN 202010983678 A CN202010983678 A CN 202010983678A CN 112118314 A CN112118314 A CN 112118314A
- Authority
- CN
- China
- Prior art keywords
- node
- load
- hard disk
- partition
- diagnosis result
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了负载均衡方法和装置,涉及云计算技术领域。具体实现方案为:获取集群内各节点的负载信息,其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;分别根据各节点的负载信息计算各节点的负载值;对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;根据诊断结果进行处理。该实施方式在满足集群异构、热点数据场景同时,使集群负载具有更高的容错性,负载更加均匀。
Description
技术领域
本申请涉及计算机技术领域,具体涉及云计算技术领域。
背景技术
分布式传输负载均衡方案是指在分布式传输系统中分区(Partition)如何在集群的节点(Broker)之间分配的策略。在实际业务中需要均衡节点的负载来提高系统的可用性。目前业界普遍采用轮询、一致性哈希、动态调度的方式解决负载均衡问题。
但轮询方式覆盖不了集群异构带来的节点性能差异场景。一致性哈希的方式中各Partition在调度中的权重是一样的,并没有考虑Partition其他指标(例如QPS和流量)的差异,且一致性哈希算法的映射关系我们无法干预和调节。动态调度的方式对于Partition的迁移没有量化,容易造成迁移过度或者迁移不足的情况,并且对于选盘的考虑因素单一,很容易出现硬盘IO瓶颈的情况。
发明内容
本公开提供了一种负载均衡方法、装置、设备以及存储介质。
根据本公开的第一方面,提供了一种负载均衡方法,包括:获取集群内各节点的负载信息,其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;分别根据各节点的负载信息计算各节点的负载值;对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;根据诊断结果进行处理。
根据本公开的第二方面,提供了一种负载均衡装置,包括:获取单元,被配置成获取集群内各节点的负载信息,其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;计算单元,被配置成分别根据各节点的负载信息计算各节点的负载值;诊断单元,被配置成对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;处理单元,被配置成根据诊断结果进行处理。
根据本公开的第三方面,提供了一种电子设备,其特征在于,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行第一方面中任一项的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,计算机指令用于使计算机执行第一方面中任一项的方法。
根据本申请的技术,在满足集群异构、热点数据场景同时,负载计算上进行了多维度考量,能够量化Partition迁移,对于Partition的迁移更精准;能够诊断出特殊场景,对于慢节点、高吞吐Partition、Broker内部硬盘负载不均、硬盘故障、集群过载情况进行针对处理使其不影响正常的负载均衡。使集群负载具有更高的容错性,负载更加均匀。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的负载均衡方法的一个实施例的流程图;
图3是根据本公开的负载均衡方法的又一个实施例的流程图;
图4是根据本公开的负载均衡方法的一个应用场景的示意图;
图5是根据本公开的负载均衡装置的一个实施例的结构示意图;
图6是用来实现本申请实施例的负载均衡方法的电子设备的框图;
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了可以应用本公开的负载均衡方法或负载均衡装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括中心节点和至少一个节点。中心节点对节点上的流量进行调度。
一个节点是一个服务器。一个集群由多个节点组成。一个节点可包括多个主题(Topic)。主题是数据写入操作的基本单元,可以指定副本。一个主题包含一个或多个分区,建主题的时候可以手动指定分区个数,个数与服务器个数相当。每条消息属于且仅属于一个主题。每个分区只会在一个节点上,物理上每个分区对应的是一个文件夹。
需要说明的是,本公开的实施例所提供的负载均衡方法一般由中心节点执行,相应地,负载均衡装置一般设置于中心节点中。
应该理解,图1中的中心节点和节点的数目仅仅是示意性的。根据实现需要,可以具有任意数目的中心节点和节点。
继续参考图2,示出了根据本公开的负载均衡方法的一个实施例的流程200。该负载均衡方法,包括以下步骤:
步骤201,获取集群内各节点的负载信息。
在本实施例中,负载均衡的方法的执行主体(例如图1所示的中心节点)可以通过有线网络或无线网络获取集群内各节点的负载信息。其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载。
1)硬盘负载
对于Broker的读和写操作都属于IO(输入,输出)作业,硬盘、CPU、主存三者速率直接的差距导致硬盘IO负载很容易成为系统的瓶颈,在硬盘使用容量没有达到极限之前硬盘的IO为硬盘的主要负载因素,基于此硬盘负载分别从空间和IO两个维度计算,当硬盘空间负载超过一定阈值才参与硬盘负载的计算。
DiskSpaceLoad←DiskUsedSpace/DiskCapacity
DiskIOLoad←DiskAvgLatency/DiskLatencyThreshold
if(DiskSpaceLoad≥DiskSpaceLoadEffectiveThreshold)DiskLoad←Max(DiskSpaceLoad,DiskIOLoad)
else DiskLoad←DiskIOLoad
其中,DiskSpaceLoad表示硬盘空间负载,DiskUsedSpace表示硬盘已用空间,DiskCapacity表示硬盘容量,DiskIOLoad表示硬盘IO负载,DiskAvgLatency表示硬盘平均延迟,DiskLatencyThreshold表示硬盘延迟阈值,DiskSpaceLoadEffectiveThreshold表示硬盘空间负载阈值。
2)网络负载
网络负载主要从读写流量两个方面考量。
NetInLoad←NetInFlow/NetInFlowQuota
NetOutLoad←NetOutFlow/NetOutFlowQuota
NetLoad←Max(NetInLoad,NetOutLoad)
其中,NetInLoad表示网络写入负载,NetInFlow表示网络写入流量,NetInFlowQuota表示网络写入流量限额,NetOutLoad表示网络读取负载,NetOutFlow网络读取流量,NetOutFlowQuota表示网络读取流量限额,NetLoad表示网络负载。
3)CPU、内存负载采用常规的CPU使用率和内存使用率。
CpuLoad←CpuUsed/CpuQuota
MemLoad←MemUsed/MemQuota
其中,CpuLoad表示CPU负载,CpuUsed表示CPU已使用量,CpuQuota表示CPU总量,MemLoad表示内存负载,MemUsed表示内存已使用量,MemQuota表示内存总量。
4)延迟负载
延迟负载主要考虑到由于硬件差别或这其他方面原因导致Broker在上述负载基本相同的负载下处理能力差的场景,对于这种场景加入Broker整体延迟负载的考量,把延迟负载作为一个负载因子,延迟负载只有在延迟相对比较明显的情况下才加入考量。
DealLatencyLoad←(DealLatency-DealLatencyEffectiveThreshold)/DealLatencyBase
其中,DealLatencyLoad表示延迟负载,DealLatency表示处理延迟,DealLatencyEffectiveThreshold表示延迟阈值,DealLatencyBase表示延迟基值。
步骤202,分别根据各节点的负载信息计算各节点的负载值。
在本实施例中,负载计算主要考虑了硬盘负载、网络负载、CPU负载、内存负载和延迟负载五个方面,根据木桶原则选择其中最高的负载作为节点的负载。
BrokerLoad←Max(AvgDiskLoad,NetLoad,CpuLoad,MemLoad,DealLatencyLoad),上述负载主要关于Broker负载计算相关,除此之外采集了Broker承载的各个Parition的流量和读写延迟。
其中,BrokerLoad表示节点的负载值,AvgDiskLoad表示节点内所有硬盘平均的硬盘负载。
步骤203,对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果。
在本实施例中,在负载均衡过程会因为非预期的场景影响负载均衡的正确性。例如,因为软件和硬件原因出现慢节点;因为Partition吞吐过大导致慢Partition;节点内部硬盘负载不均,集群整体过载等多种场景。本申请对这些非预期场景的诊断,根据诊断结果做出合理操作。实际上本申请把集群负载不均衡也作为一个诊断项。
步骤204,根据诊断结果进行处理。
在本实施例中,针对不同的诊断结果采取不同的措施调整集群。例如,对于慢节点会尝试重启,如果没有效果会进行加黑操作防止Partition迁入该节点,对于集群过载进行扩容通知。
本公开的上述实施例提供的方法,在满足集群异构、热点数据场景同时:负载计算上进行了多维度考量;能够量化Partition迁移,对于Partition的迁移更精准;能够诊断出特殊场景,对于慢节点、高吞吐Partition、Broker内部硬盘负载不均、硬盘故障、集群过载情况进行针对处理使其不影响正常的负载均衡。使集群负载具有更高的容错性,负载更加均匀。
在本实施例的一些可选的实现方式中,若连续预定数目的调度周期内该节点的负载值低于第一负载值阈值且该节点的延迟负载高于第一延迟阈值,则诊断结果为该节点为疑似慢节点。将疑似慢节点上的分区迁移到其他节点;重启疑似慢节点;若重启后疑似慢节点的负载值和延迟负载的没有改善,则将疑似慢节点标记为慢节点,并禁止其它分区迁入慢节点;输出该节点为慢节点的告警信息。通过判断Broker的负载情况和节点承载的Partition延迟情况判断该Broker是否为慢节点,某节点延迟很高但除延迟之外其他负载很低的情况下,假如这种情况持续几个周期,则将该节点上的Partition迁移到其他节点,同时重启该节点,如果重启之后如果没有改善,则标记为慢节点,防止其他Partition迁入该Broker同时触发慢节点通知。从而使得一些故障节点通过重启恢复,即使无法恢复,也能切换到其它节点,避免业务受影响。
在本实施例的一些可选的实现方式中,获取该节点内各硬盘的硬盘负载,并计算该节点内平均的硬盘负载;若存在硬盘负载高于第一硬盘负载阈值或低于第二硬盘负载阈值的硬盘,则诊断结果为硬盘负载不均衡,其中,第一硬盘负载阈值大于第二硬盘负载阈值;以及根据诊断结果进行处理,包括:计算出需要迁移的源硬盘、目的硬盘和硬盘最大可迁移流量;从源硬盘向目的硬盘迁移最接近硬盘最大可迁移流量的分区。通过判断节点内硬盘间负载差值来判断负载是否均衡,如果不均衡则触发节点内硬盘负载均衡。节点内硬盘负载均只需要计算出要迁移的Partition,重新分配给该节点即可,在分配该节点的过程在,节内部会选择负载小的硬盘来承载该Partition。从而使得硬盘负载均衡,避免个别硬盘负载过大导致寿命过短。
具体地,可将硬盘负载高于第一硬盘负载阈值的硬盘确定为源硬盘,将硬盘负载低于第二硬盘负载阈值的硬盘确定为目的硬盘。
硬盘最大可迁移流量的计算思路是根据当前硬盘的流量和硬盘负载得到比例系数,按照此比例系数计算假设当硬盘的硬盘负载等于节点内平均硬盘负载时流量的变化量为期望迁移的流量。
(1)流量迁移计算
高负载硬盘的硬盘期望迁出流量计算:
DiskExpectEmigrateFlow←DiskFlow-DiskFlow/DiskLoad*AvgDiskLoad
低负载的硬盘的硬盘期望迁入流量计算:
DiskExpectImmigrateFlow←DiskFlow/DiskLoad*AvgDiskLoad–DiskFlow
其中,DiskExpectEmigrateFlow表示硬盘期望迁出流量,DiskExpectImmigrateFlow表示硬盘期望迁入流量,DiskFlow表示硬盘流量,DiskLoad表示硬盘负载,AvgDiskLoad表示节点内平均的硬盘负载
(2)迁移目标Partition计算
选择迁移目标Partition策略根据当前期望迁移的流量计算得到的,首先在迁移之前已经确定了目的硬盘,因此当前迁移的Partition流量不高于期望迁移的流量比例太多,否则很可能出现过迁的行为。
硬盘最大可迁移流量计算:
MaxDiskPartitionEmigrateFlow←Min(DiskExpectEmigrateFlow,DiskExpectImmigrateFlow)*ProportionExceedThreshold
ProportionExceedThreshold为系数,可以大于1也可小于1,一般设为大于1。
(3)迁移Partition选择:
选择最接近期望流量的Partition集合作为期望迁移的Partition集合。
在本实施例的一些可选的实现方式中,根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:对于该节点的每块硬盘,若该硬盘的硬盘负载小于第三硬盘负载阈值且其承载的分区的流量小于流量下限,则诊断结果为该硬盘为故障硬盘;以及根据诊断结果进行处理,包括:将故障硬盘上的分区迁移到其它节点;输出提示硬盘故障的告警信息。从而快速找找到故障硬盘,避免将流量分到到故障硬盘,又因硬盘故障无法读写导致不断地重试。
在本实施例的一些可选的实现方式中,根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:对于该节点的每个分区,若该分区的流量达到设计上限,则诊断结果为该分区为高吞吐分区;以及根据诊断结果进行处理,包括:输出提示该分区为高吞吐分区的告警信息。通过Partition的流量是否达到设计上限来判断是否为高吞吐Partition,如果为高吞吐Partition则进行通知。从而及时发现异常,及时处理,避免影响业务处理。
在本实施例的一些可选的实现方式中,根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:计算各节点的平均负载值;若平均负载值大于过载阈值,则诊断结果为集群处于过载状态;以及根据诊断结果进行处理,包括:输出提示集群处于过载状态需要扩容的告警信息。通过计算集群的平均负载判集群是否处于过载状态,如果过载则通知扩容。从而及时进行扩容,避免出现无法接入集群的情况。
进一步参考图3,其示出了负载均衡方法的又一个实施例的流程300。该负载均衡方法的流程300,包括以下步骤:
步骤301,获取集群内各节点的负载信息。
步骤302,分别根据各节点的负载信息计算各节点的负载值。
步骤301-302与步骤201-202基本相同,因此不再赘述。
步骤303,计算各节点的负载值的方差。
在本实施例中,计算出各节点的负载值的平均值后,再计算出方差。
步骤304,若方差大于预定方差阈值,则根据各节点的负载值确定出源节点和目的节点。
在本实施例中,通过计算集群内Broker节点负载的方差是否在阈值范围内判断集群负载是否均衡,如果不均衡通过调度计算,进行Partition迁移。首先要确定高负载的节点作为源节点,低负载的节点作为目的节点。高负载指的是负载值高于集群内各节点的平均负载值。低负载指的是负载值低于集群内各节点的平均负载值。
步骤305,计算源节点的期望迁出的流量和目的节点的期望迁入的流量。
在本实施例中,在负载均衡过程中需要计算高负载Broker期望迁出的流量和低负载Broker可迁入的流量,迁入迁出流量是根据当前Broker负载和当前承载的流量以及集群平均负载计算得到的。思路是根据Broker当前负载流量和负载值得到比例系数,按照此比例系数计算假设当broker负载等于集群平均负载时流量的变化量为期望迁移的流量。
高负载节点期望迁出流量计算:
NodeExpectEmigrateFlow←NodeFlow-NodeFlow/NodeLoad*AvgBrokerLoad
低负载节点期望迁入流量计算:
NodeExpectImmigrateFlow←NodeFlow/NodeLoad*AvgBrokerLoad–NodeFlow
其中,NodeExpectEmigrateFlow表示节点期望迁出流量,NodeExpectImmigrateFlow表示节点期望迁入流量,NodeFlow表示节点流量,NodeLoad表示节点的负载值,即BrokerLoad。AvgBrokerLoad表示集群内各节点的平均负载值。
步骤306,根据期望迁出的流量和期望迁入的流量计算源节点和目的节点之间的最大可迁移流量。
在本实施例中,选择迁移目标Partition策略是根据当前期望迁移的流量计算得到的,首先在迁移之前已经确定了目的节点,因此当前迁移的Partition流量不高于期望迁移的流量比例太多,否则很可能出现过迁的行为。
最大可迁移流量计算:
MaxPartitionEmigrateFlow←Min(NodeExpectEmigrateFlow,NodeExpectImmigrateFlow)*ProportionExceedThreshold
其中,MaxPartitionEmigrateFlow表示最大可迁移流量,ProportionExceedThreshold表示系数,可以大于1也可小于1,一般设为大于1。
步骤307,从候选的分区集合中选择最接近最大可迁移流量的分区集合作为期望迁移的分区。
在本实施例中,选择最接近期望流量的Partition集合作为期望迁移的Partition集合。从而尽量减少迁移次数实现负载均衡,减少了数据倒换次数,从而减少了时延。
可选地,可Partition分布控制选择期望迁移的分区。同一Topic下的Partition一般有着相同的流量特征,尽量在波峰的时候Partition分布在不同节点上同时也有利于IO的分布均匀,因此设定限制同一Topic下的Partition分布在同一Broker上阈值max_partition_num_on_same_broker。然后结合分布控制,选择在满足分布控制的条件下最接近期望流量的Partition集合作为期望迁移的Partition集合。例如,源节点的候选的Partition集合为主题A,目的节点上主题A下的Partition的数量已经达到了阈值max_partition_num_on_same_broker,则不可将源节点的候选的Partition集合迁移到目的节点,需要更换目的节点进行迁移。在保障流量负载均衡的同时,也保证了不同业务的均衡。
步骤308,将期望迁移的分区从源节点迁移到目标节点。
在本实施例中,将步骤307选择的分区从源节点迁移到目标节点。一个调度周期内可以有多个源节点和对应的多个目的地点。迁移后源节点的负载降低、目的节点的负载升高,最终实现负载均衡。
在本实施例的一些可选的实现方式中,根据各节点的负载值将节点分别放到大顶堆和小顶堆中;每个调度周期取大顶堆堆顶元素作为源节点并取小顶堆堆顶元素作为候选目的节点;若根据候选目的节点的负载值无法选择出可迁移的分区,则将候选目的节点暂时移出小顶堆等到下个调度周期再重新加入小顶堆,选择小顶堆中下一个节点作为候选目的节点;若根据候选目的节点的负载值能够选择出可迁移的分区,则将候选目的节点确定为目的节点。堆是一种非线性结构,可以把堆看作一个数组,也可以被看作一个完全二叉树,通俗来讲堆其实就是利用完全二叉树的结构来维护的一维数组。按照堆的特点可以把堆分为大顶堆和小顶堆。大顶堆:每个结点的值都大于或等于其左右孩子结点的值。小顶堆:每个结点的值都小于或等于其左右孩子结点的值。
这里需要注意的是:可迁入流量依赖于broker的负载和其本身的物理配置。尽管选择的目的Broke负载是最小的,但不代表其可迁入流量最大,所以可能会计算不出可迁移的Partition,具体过程如图4所示,当计算不出可迁移的Partition时,将当前目的Broker暂时移出小顶堆,选择下一个目的Broker。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种负载均衡装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的负载均衡装置500包括:获取单元501、计算单元502、诊断单元503、处理单元504。其中,获取单元501,被配置成获取集群内各节点的负载信息,其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;计算单元502,被配置成分别根据各节点的负载信息计算各节点的负载值;诊断单元503,被配置成对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;处理单元504,被配置成根据诊断结果进行处理。
在本实施例中,负载均衡装置500的获取单元501、计算单元502、诊断单元503、处理单元504的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203、步骤204。
在本实施例的一些可选的实现方式中,诊断单元503进一步被配置成:若连续预定数目的调度周期内该节点的负载值低于第一负载值阈值且该节点的延迟负载高于第一延迟阈值,则诊断结果为该节点为疑似慢节点;以及处理单元504进一步被配置成:将疑似慢节点上的分区迁移到其他节点;重启疑似慢节点;若重启后疑似慢节点的负载值和延迟负载的没有改善,则将疑似慢节点标记为慢节点,并禁止其它分区迁入慢节点;输出该节点为慢节点的告警信息。
在本实施例的一些可选的实现方式中,诊断单元503进一步被配置成:获取该节点内各硬盘的硬盘负载,并计算该节点内平均的硬盘负载;若存在硬盘负载高于第一硬盘负载阈值或低于第二硬盘负载阈值的硬盘,则诊断结果为硬盘负载不均衡,其中,第一硬盘负载阈值大于第二硬盘负载阈值;以及处理单元504进一步被配置成:计算出需要迁移的源硬盘、目的硬盘和硬盘最大可迁移流量;从源硬盘向目的硬盘迁移最接近硬盘最大可迁移流量的分区。
在本实施例的一些可选的实现方式中,诊断单元503进一步被配置成:对于该节点的每块硬盘,若该硬盘的硬盘负载小于第三硬盘负载阈值且其承载的分区的流量小于流量下限,则诊断结果为该硬盘为故障硬盘;以及处理单元504进一步被配置成:将故障硬盘上的分区迁移到其它节点;输出提示硬盘故障的告警信息。
在本实施例的一些可选的实现方式中,诊断单元503进一步被配置成:对于该节点的每个分区,若该分区的流量达到设计上限,则诊断结果为该分区为高吞吐分区;以及处理单元504进一步被配置成:输出提示该分区为高吞吐分区的告警信息。
在本实施例的一些可选的实现方式中,诊断单元503进一步被配置成:计算各节点的平均负载值;若平均负载值大于过载阈值,则诊断结果为集群处于过载状态;以及处理单元504进一步被配置成:输出提示集群处于过载状态需要扩容的告警信息。
在本实施例的一些可选的实现方式中,诊断单元503进一步被配置成:计算各节点的负载值的方差;若方差大于预定方差阈值,则诊断结果为集群负载不均衡;以及处理单元504进一步被配置成:根据各节点的负载值确定出源节点和目的节点;计算源节点的期望迁出的流量和目的节点的期望迁入的流量;根据期望迁出的流量和期望迁入的流量计算源节点和目的节点之间的最大可迁移流量;从候选的分区集合中选择最接近最大可迁移流量的分区集合作为期望迁移的分区;将期望迁移的分区从源节点迁移到目标节点。
在本实施例的一些可选的实现方式中,处理单元504进一步被配置成:获取目的节点中不同主题下分区的数量和候选的分区集合中各分区所属的主题;从候选的分区集合中选择最接近最大可迁移流量且迁移后的每个主题下分区的数量不超过预定分区量阈值的分区集合。
在本实施例的一些可选的实现方式中,处理单元504进一步被配置成:根据各节点的负载值将节点分别放到大顶堆和小顶堆中;每个调度周期取大顶堆堆顶元素作为源节点并取小顶堆堆顶元素作为候选目的节点;若根据候选目的节点的负载值无法选择出可迁移的分区,则将候选目的节点暂时移出小顶堆等到下个调度周期再重新加入小顶堆,选择小顶堆中下一个节点作为候选目的节点;若根据候选目的节点的负载值能够选择出可迁移的分区,则将候选目的节点确定为目的节点。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图6所示,是根据本申请实施例的负载均衡方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的负载均衡的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的负载均衡的方法。
存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的负载均衡的方法对应的程序指令/模块(例如,附图5所示的获取单元501、计算单元502、诊断单元503、处理单元504)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的负载均衡的方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据负载均衡的电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个硬盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至负载均衡的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
负载均衡的方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
输入装置603可接收输入的数字或字符信息,以及产生与负载均衡的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,硬盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
本申请实施例的技术方案与目前的负载均衡方案,不同之处是:
(1)在负载计算上进行多维度考量。
本申请在选择目标硬盘承载Partition时,对于硬盘负载采用这两个维度,根据木桶原则取硬容量负载和IO负载之间的最大值作为硬盘对外负载值,而不是在选盘的时候只考虑容量因素。
(2)支持场景诊断。
在负载均衡过程会因为非预期的场景影响负载均衡的正确性。因为软件和硬件原因出现慢节点;因为Partition吞吐过大导致慢Partition;节点内部硬盘负载不均,集群整体过载等多种场景。本申请增加对这些非预期场景的诊断,根据诊断结果做出合理操作。实际上本申请把集群负载不均衡也做为一个诊断项。
(3)在迁移阶段对迁移Partition进行了量化。
在负载均衡过程每个根据每个Broke的负载情况差异,需要迁出的Partition数量以及迁出的流量不同,本申请对于需要迁出Partition高负载Broke以及需要迁入Partition的低负载Broker做预计算,计算出是使负载均匀正向发展的迁移的Partition量,每次迁移的Partition流量不能高于该源和目的节点的可迁移流量最小值。
(4)应对负载不均策略,不光是迁移,针对诊断结果给出对应的举措。
对于慢节点会尝试重启,如果没有效果会进行加黑操作防止Partition迁入该节点,对于集群过载进行扩容通知。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (20)
1.一种负载均衡方法,包括:
获取集群内各节点的负载信息,其中,所述负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;
分别根据各节点的负载信息计算各节点的负载值;
对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;
根据所述诊断结果进行处理。
2.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
若连续预定数目的调度周期内该节点的负载值低于第一负载值阈值且该节点的延迟负载高于第一延迟阈值,则诊断结果为该节点为疑似慢节点;以及
所述根据所述诊断结果进行处理,包括:
将所述疑似慢节点上的分区迁移到其他节点;
重启所述疑似慢节点;
若重启后所述疑似慢节点的负载值和延迟负载的没有改善,则将所述疑似慢节点标记为慢节点,并禁止其它分区迁入所述慢节点;
输出该节点为慢节点的告警信息。
3.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
获取该节点内各硬盘的硬盘负载,并计算该节点内平均的硬盘负载;
若存在硬盘负载高于第一硬盘负载阈值或低于第二硬盘负载阈值的硬盘,则诊断结果为硬盘负载不均衡,其中,第一硬盘负载阈值大于第二硬盘负载阈值;以及
所述根据所述诊断结果进行处理,包括:
计算出需要迁移的源硬盘、目的硬盘和硬盘最大可迁移流量;
从所述源硬盘向所述目的硬盘迁移最接近硬盘最大可迁移流量的分区。
4.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
对于该节点的每块硬盘,若该硬盘的硬盘负载小于第三硬盘负载阈值且其承载的分区的流量小于流量下限,则诊断结果为该硬盘为故障硬盘;以及
所述根据所述诊断结果进行处理,包括:
将故障硬盘上的分区迁移到其它节点;
输出提示硬盘故障的告警信息。
5.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
对于该节点的每个分区,若该分区的流量达到设计上限,则诊断结果为该分区为高吞吐分区;以及
所述根据所述诊断结果进行处理,包括:
输出提示该分区为高吞吐分区的告警信息。
6.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
计算各节点的平均负载值;
若所述平均负载值大于过载阈值,则诊断结果为所述集群处于过载状态;以及
所述根据所述诊断结果进行处理,包括:
输出提示所述集群处于过载状态需要扩容的告警信息。
7.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
计算各节点的负载值的方差;
若所述方差大于预定方差阈值,则诊断结果为集群负载不均衡;以及
所述根据所述诊断结果进行处理,包括:
根据各节点的负载值确定出源节点和目的节点;
计算所述源节点的期望迁出的流量和所述目的节点的期望迁入的流量;
根据所述期望迁出的流量和所述期望迁入的流量计算所述源节点和所述目的节点之间的最大可迁移流量;
从候选的分区集合中选择最接近所述最大可迁移流量的分区集合作为期望迁移的分区;
将所述期望迁移的分区从源节点迁移到目标节点。
8.根据权利要求7所述的方法,其中,所述从候选的分区集合中选择最接近所述最大可迁移流量的分区集合作为期望迁移的分区,包括:
获取所述目的节点中不同主题下分区的数量和候选的分区集合中各分区所属的主题;
从候选的分区集合中选择最接近最大可迁移流量且迁移后的每个主题下分区的数量不超过预定分区量阈值的分区集合。
9.根据权利要求7所述的方法,其中,所述根据各节点的负载值确定出源节点和目的节点,包括:
根据各节点的负载值将节点分别放到大顶堆和小顶堆中;
每个调度周期取大顶堆堆顶元素作为源节点并取小顶堆堆顶元素作为候选目的节点;
若根据所述候选目的节点的负载值无法选择出可迁移的分区,则将所述候选目的节点暂时移出小顶堆等到下个调度周期再重新加入小顶堆,选择小顶堆中下一个节点作为候选目的节点;
若根据所述候选目的节点的负载值能够选择出可迁移的分区,则将所述候选目的节点确定为目的节点。
10.一种负载均衡装置,包括:
获取单元,被配置成获取集群内各节点的负载信息,其中,所述负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;
计算单元,被配置成分别根据各节点的负载信息计算各节点的负载值;
诊断单元,被配置成对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;
处理单元,被配置成根据所述诊断结果进行处理。
11.根据权利要求10所述的装置,其中,所述诊断单元进一步被配置成:
若连续预定数目的调度周期内该节点的负载值低于第一负载值阈值且该节点的延迟负载高于第一延迟阈值,则诊断结果为该节点为疑似慢节点;以及
所述处理单元进一步被配置成:
将所述疑似慢节点上的分区迁移到其他节点;
重启所述疑似慢节点;
若重启后所述疑似慢节点的负载值和延迟负载的没有改善,则将所述疑似慢节点标记为慢节点,并禁止其它分区迁入所述慢节点;
输出该节点为慢节点的告警信息。
12.根据权利要求10所述的装置,其中,所述诊断单元进一步被配置成:
获取该节点内各硬盘的硬盘负载,并计算该节点内平均的硬盘负载;
若存在硬盘负载高于第一硬盘负载阈值或低于第二硬盘负载阈值的硬盘,则诊断结果为硬盘负载不均衡,其中,第一硬盘负载阈值大于第二硬盘负载阈值;以及
所述处理单元进一步被配置成:
计算出需要迁移的源硬盘、目的硬盘和硬盘最大可迁移流量;
从所述源硬盘向所述目的硬盘迁移最接近硬盘最大可迁移流量的分区。
13.根据权利要求10所述的装置,其中,所述诊断单元进一步被配置成:
对于该节点的每块硬盘,若该硬盘的硬盘负载小于第三硬盘负载阈值且其承载的分区的流量小于流量下限,则诊断结果为该硬盘为故障硬盘;以及
所述处理单元进一步被配置成:
将故障硬盘上的分区迁移到其它节点;
输出提示硬盘故障的告警信息。
14.根据权利要求10所述的装置,其中,所述诊断单元进一步被配置成:
对于该节点的每个分区,若该分区的流量达到设计上限,则诊断结果为该分区为高吞吐分区;以及
所述处理单元进一步被配置成:
输出提示该分区为高吞吐分区的告警信息。
15.根据权利要求10所述的装置,其中,所述诊断单元进一步被配置成:
计算各节点的平均负载值;
若所述平均负载值大于过载阈值,则诊断结果为所述集群处于过载状态;以及
所述处理单元进一步被配置成:
输出提示所述集群处于过载状态需要扩容的告警信息。
16.根据权利要求10所述的装置,其中,所述诊断单元进一步被配置成:
计算各节点的负载值的方差;
若所述方差大于预定方差阈值,则诊断结果为集群负载不均衡;以及
所述处理单元进一步被配置成:
根据各节点的负载值确定出源节点和目的节点;
计算所述源节点的期望迁出的流量和所述目的节点的期望迁入的流量;
根据所述期望迁出的流量和所述期望迁入的流量计算所述源节点和所述目的节点之间的最大可迁移流量;
从候选的分区集合中选择最接近所述最大可迁移流量的分区集合作为期望迁移的分区;
将所述期望迁移的分区从源节点迁移到目标节点。
17.根据权利要求16所述的装置,其中,所述处理单元进一步被配置成:
获取所述目的节点中不同主题下分区的数量和候选的分区集合中各分区所属的主题;
从候选的分区集合中选择最接近最大可迁移流量且迁移后的每个主题下分区的数量不超过预定分区量阈值的分区集合。
18.根据权利要求16所述的装置,其中,所述处理单元进一步被配置成:
根据各节点的负载值将节点分别放到大顶堆和小顶堆中;
每个调度周期取大顶堆堆顶元素作为源节点并取小顶堆堆顶元素作为候选目的节点;
若根据所述候选目的节点的负载值无法选择出可迁移的分区,则将所述候选目的节点暂时移出小顶堆等到下个调度周期再重新加入小顶堆,选择小顶堆中下一个节点作为候选目的节点;
若根据所述候选目的节点的负载值能够选择出可迁移的分区,则将所述候选目的节点确定为目的节点。
19.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010983678.1A CN112118314B (zh) | 2020-09-18 | 2020-09-18 | 负载均衡方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010983678.1A CN112118314B (zh) | 2020-09-18 | 2020-09-18 | 负载均衡方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112118314A true CN112118314A (zh) | 2020-12-22 |
CN112118314B CN112118314B (zh) | 2023-05-05 |
Family
ID=73801298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010983678.1A Active CN112118314B (zh) | 2020-09-18 | 2020-09-18 | 负载均衡方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112118314B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113900731A (zh) * | 2021-09-30 | 2022-01-07 | 百度在线网络技术(北京)有限公司 | 请求处理方法、装置、设备和存储介质 |
CN114338696A (zh) * | 2022-03-14 | 2022-04-12 | 北京奥星贝斯科技有限公司 | 用于分布式系统的方法及装置 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103353853A (zh) * | 2013-07-26 | 2013-10-16 | 浪潮电子信息产业股份有限公司 | 一种负载自动调节的方法 |
CN103731365A (zh) * | 2012-10-16 | 2014-04-16 | 无锡云捷科技有限公司 | 一种无瓶颈负载均衡网络服务器系统及其构建方法 |
CN103973583A (zh) * | 2013-01-28 | 2014-08-06 | 中兴通讯股份有限公司 | 分布式文件系统优化负载均衡的方法及系统 |
US9378067B1 (en) * | 2014-05-08 | 2016-06-28 | Springpath, Inc. | Automated load balancing across the distributed system of hybrid storage and compute nodes |
CN106572181A (zh) * | 2016-11-08 | 2017-04-19 | 深圳市中博睿存科技有限公司 | 基于集群文件系统的对象存储接口负载均衡方法和系统 |
CN107193706A (zh) * | 2017-03-31 | 2017-09-22 | 深圳市浩远智能科技有限公司 | 一种确定目标机房信息技术it设备的方法和装置 |
CN107196865A (zh) * | 2017-06-08 | 2017-09-22 | 中国民航大学 | 一种负载感知的自适应阈值过载迁移方法 |
CN108009016A (zh) * | 2016-10-31 | 2018-05-08 | 华为技术有限公司 | 一种资源负载均衡控制方法及集群调度器 |
CN109408227A (zh) * | 2018-09-19 | 2019-03-01 | 平安科技(深圳)有限公司 | 负载均衡方法、装置及存储介质 |
CN110633151A (zh) * | 2019-09-20 | 2019-12-31 | 北京小米移动软件有限公司 | 分布式发布消息集群分区平衡的方法、装置及存储介质 |
CN110764909A (zh) * | 2019-10-22 | 2020-02-07 | 中国银联股份有限公司 | 一种用于云计算平台的存储设备的负载均衡的方法和系统 |
CN110941535A (zh) * | 2019-11-22 | 2020-03-31 | 山东超越数控电子股份有限公司 | 一种硬盘负载均衡方法 |
CN111061561A (zh) * | 2019-11-27 | 2020-04-24 | 扆亮海 | 云计算管理平台的全阶段负载分担综合优化方法 |
CN111580963A (zh) * | 2020-04-29 | 2020-08-25 | 平安科技(深圳)有限公司 | 存储集群的负载均衡方法、装置、计算机设备及存储介质 |
-
2020
- 2020-09-18 CN CN202010983678.1A patent/CN112118314B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731365A (zh) * | 2012-10-16 | 2014-04-16 | 无锡云捷科技有限公司 | 一种无瓶颈负载均衡网络服务器系统及其构建方法 |
CN103973583A (zh) * | 2013-01-28 | 2014-08-06 | 中兴通讯股份有限公司 | 分布式文件系统优化负载均衡的方法及系统 |
CN103353853A (zh) * | 2013-07-26 | 2013-10-16 | 浪潮电子信息产业股份有限公司 | 一种负载自动调节的方法 |
US9378067B1 (en) * | 2014-05-08 | 2016-06-28 | Springpath, Inc. | Automated load balancing across the distributed system of hybrid storage and compute nodes |
CN108009016A (zh) * | 2016-10-31 | 2018-05-08 | 华为技术有限公司 | 一种资源负载均衡控制方法及集群调度器 |
CN106572181A (zh) * | 2016-11-08 | 2017-04-19 | 深圳市中博睿存科技有限公司 | 基于集群文件系统的对象存储接口负载均衡方法和系统 |
CN107193706A (zh) * | 2017-03-31 | 2017-09-22 | 深圳市浩远智能科技有限公司 | 一种确定目标机房信息技术it设备的方法和装置 |
CN107196865A (zh) * | 2017-06-08 | 2017-09-22 | 中国民航大学 | 一种负载感知的自适应阈值过载迁移方法 |
CN109408227A (zh) * | 2018-09-19 | 2019-03-01 | 平安科技(深圳)有限公司 | 负载均衡方法、装置及存储介质 |
CN110633151A (zh) * | 2019-09-20 | 2019-12-31 | 北京小米移动软件有限公司 | 分布式发布消息集群分区平衡的方法、装置及存储介质 |
CN110764909A (zh) * | 2019-10-22 | 2020-02-07 | 中国银联股份有限公司 | 一种用于云计算平台的存储设备的负载均衡的方法和系统 |
CN110941535A (zh) * | 2019-11-22 | 2020-03-31 | 山东超越数控电子股份有限公司 | 一种硬盘负载均衡方法 |
CN111061561A (zh) * | 2019-11-27 | 2020-04-24 | 扆亮海 | 云计算管理平台的全阶段负载分担综合优化方法 |
CN111580963A (zh) * | 2020-04-29 | 2020-08-25 | 平安科技(深圳)有限公司 | 存储集群的负载均衡方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
JIAN GUO等: "An instances placement algorithm based on disk I/O load for big data in private cloud" * |
崔悦: "基于负载均衡的节能任务调度模型及其算法研究" * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113900731A (zh) * | 2021-09-30 | 2022-01-07 | 百度在线网络技术(北京)有限公司 | 请求处理方法、装置、设备和存储介质 |
CN113900731B (zh) * | 2021-09-30 | 2023-08-15 | 百度在线网络技术(北京)有限公司 | 请求处理方法、装置、设备和存储介质 |
CN114338696A (zh) * | 2022-03-14 | 2022-04-12 | 北京奥星贝斯科技有限公司 | 用于分布式系统的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112118314B (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10924535B2 (en) | Resource load balancing control method and cluster scheduler | |
JP6423468B2 (ja) | 記憶階層の動的選択 | |
CN108733509B (zh) | 用于在集群系统中备份和恢复数据的方法和系统 | |
US8386610B2 (en) | System and method for automatic storage load balancing in virtual server environments | |
CN111913670B (zh) | 负载均衡的处理方法、装置、电子设备及存储介质 | |
US20180091586A1 (en) | Self-healing a message brokering cluster | |
US8713125B2 (en) | Method and system for scaling usage of a social based application on an online social network | |
US20100211694A1 (en) | Routing users to receive online services based on online behavior | |
US10356150B1 (en) | Automated repartitioning of streaming data | |
US20090228589A1 (en) | Server and storage-aware method for selecting virtual machine migration targets | |
CN111694646A (zh) | 资源调度方法、装置、电子设备及计算机可读存储介质 | |
CN110610449A (zh) | 处理计算任务的方法、设备和计算机程序产品 | |
CN111190745A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN106133693A (zh) | 虚拟机的迁移方法、装置及设备 | |
US11411799B2 (en) | Scalable statistics and analytics mechanisms in cloud networking | |
US11588884B2 (en) | Utilizing network analytics for service provisioning | |
CN112118314A (zh) | 负载均衡方法和装置 | |
WO2022199204A1 (zh) | 用于确定资源的方法和装置 | |
CN111865720A (zh) | 用于处理请求的方法、装置、设备以及存储介质 | |
CN111782147A (zh) | 用于集群扩缩容的方法和装置 | |
CN114564313A (zh) | 负载调整方法、装置、电子设备及存储介质 | |
CN116057507A (zh) | 存储级负载平衡 | |
US10594620B1 (en) | Bit vector analysis for resource placement in a distributed system | |
CN112748862A (zh) | 用于管理盘的方法、电子设备和计算机程序产品 | |
CN116955271A (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 |