CN112272217B - 一种kafka集群负载均衡方法、***、设备以及介质 - Google Patents
一种kafka集群负载均衡方法、***、设备以及介质 Download PDFInfo
- Publication number
- CN112272217B CN112272217B CN202011111109.4A CN202011111109A CN112272217B CN 112272217 B CN112272217 B CN 112272217B CN 202011111109 A CN202011111109 A CN 202011111109A CN 112272217 B CN112272217 B CN 112272217B
- Authority
- CN
- China
- Prior art keywords
- load
- current
- theme
- data
- write
- 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
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000005192 partition Methods 0.000 claims abstract description 56
- 238000005457 optimization Methods 0.000 claims abstract description 36
- 230000004044 response Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 8
- 230000000903 blocking effect Effects 0.000 abstract description 3
- 238000012544 monitoring process Methods 0.000 description 15
- 238000001514 detection method Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种kafka集群负载均衡方法,包括以下步骤:获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;基于当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对当前的主题配置策略进行调整以对主题进行负载均衡。本发明还公开了一种***、计算机设备以及可读存储介质。本发明提出的方案通过实时获取集群负载状态,从而动态调整Kafka主题配置优化规则,降低Kafka集群数据倾斜、单点负载过高、网络阻塞发生的可能性,实现Kafka集群的资源均衡配置。
Description
技术领域
本发明涉及kafka集群领域,具体涉及一种kafka集群负载均衡方法、***、设备以及存储介质。
背景技术
Kafka作为消息队列服务,在实际业务中往往包含多个主题且承载较大的数据量,但Kafka自身不能感知集群中的读写负载、网络压力、主题分区、磁盘容量信息,创建主题时不会根据上述信息进行主题规则优化,不均衡的主机规则配置往往会导致数据倾斜、单点负载过高、网络阻塞等问题。
发明内容
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种kafka集群负载均衡方法,包括以下步骤:
获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
在一些实施例中,获取每一个节点当前的网络负载,进一步包括:
利用预设的过滤项获取集群中的每一个节点的入站速率和出站速率以得到所述每一个节点的网络负载。
在一些实施例中,获取每一个节点下的数据盘当前的读写负载,进一步包括:
利用预设的过滤项获取多个所述主题的数据的读写速率,并将与同一个数据盘对应的若干个主题的数据的读写速率累加以得到所述同一个数据盘的读写负载。
在一些实施例中,获取每一个节点下的数据盘当前的容量负载,进一步包括:
获取所述数据盘保存的每一个主题数据文件中的数据索引存储的信息大小字段以得到所述主题对应的数据大小,进而得到所述容量负载。
在一些实施例中,获取每一个节点下当前的主题分区负载,进一步包括:
获取主题的元信息以得到每一个主题在不同的数据盘中的分区分布信息,根据所述分区分布信息确定每一个数据盘内的主题分区负载。
在一些实施例中,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
根据集群的业务场景,确定网络负载指标以及读写负载指标、容量负载指标和主题分区负载指标的优先级;
根据所述优先级确定所述主题配置优化规则。
在一些实施例中,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
分别对所述网络负载指标以及所述读写负载指标、所述容量负载指标和所述主题分区负载指标设置阈值;
响应于所述当前的网络负载以及所述当前的读写负载、所述当前的容量负载和所述当前的主题分区负载中的一个或多个大于阈值,触发调整当前的主题创建配置策略。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种kafka集群负载均衡***,包括:
集群负载感知模块,所述集群负载感知模块配置为获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
集群均衡规则模块,所述集群均衡规则模块配置为基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
主题配置优化模块,所述主题配置优化模块配置为响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如上所述的任一种kafka集群负载均衡方法的步骤。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时执行如上所述的任一种kafka集群负载均衡方法的步骤。
本发明具有以下有益技术效果之一:本发明提出的方案针对Kafka集群增加检测读写负载、网络负载、主题分区负载、磁盘容量负载的负载感知模块,实时获取集群负载状态,针对集群负载状态,动态调整Kafka主题配置优化规则,降低Kafka集群数据倾斜、单点负载过高、网络阻塞发生的可能性,实现Kafka集群的资源均衡配置、提升集群稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明的实施例提供的kafka集群负载均衡方法的流程示意图;
图2为本发明的实施例提供的根据主题配置优化规则进行主题配置优化的流程框图;
图3为本发明的实施例提供的kafka集群负载均衡***的结构示意图;
图4为本发明的实施例提供的计算机设备的结构示意图;
图5为本发明的实施例提供的计算机可读存储介质的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
需要说明的是,在本发明的实施例中,Kafka集群为高吞吐量的分布式发布订阅消息***;主题:kafka中Topic即为主题,若要使用kafka作为数据分发等功能,需先创建topic,使用topic作为数据订阅消费的对象;Consumer:kafka中数据拉取的操作角色,从指定的主题中获取数据;Producer:kafka中数据写入的操作角色,向指定的主题中写入数据;分区:Partition,kafka topic中概念,为主题单副本中数据分片概念,全部分区下的数据才是一个主题的全部数据;副本:Replication,kafka topic数据副本个数,若主题为2副本,即为集群内存在两份完全一致的数据;
根据本发明的一个方面,本发明的实施例提出一种kafka集群负载均衡方法,如图1所示,其可以包括步骤:
S1,获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
S2,基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
S3,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
本发明提出的方案针对Kafka集群增加检测读写负载、网络负载、主题分区负载、磁盘容量负载的负载感知模块,实时获取集群负载状态,针对集群负载状态,动态调整Kafka主题配置优化规则,降低Kafka集群数据倾斜、单点负载过高、网络阻塞发生的可能性,实现Kafka集群的资源均衡配置、提升集群稳定性。
在一些实施例中,可以通过集群负载感知模块探知集群内负载情况,集群负载感知模块可以包括磁盘读写负载子模块、磁盘容量探测子模块、节点网络负载子模块、主题分区探测子模块,通过实时获取信息感知集群负载状况;通过集群均衡规则模块用于集群负载的均衡规则管理,用户可依据场景需求配置对应的主题配置优化规则,在触发主题配置优化规则后调用主题配置优化模块;主题配置优化模块则在触发主题配置优化规则后,将依据优化规则自动调整主题配置,使得集群在接收新的主题创建请求或接收到主题的新的数据后应用新的主题配置规则。
在一些实施例中,获取每一个节点当前的网络负载,进一步包括:
利用预设的过滤项获取集群中的每一个节点的入站速率和出站速率以得到所述每一个节点的网络负载。
具体的,由于Kafka服务对外提供数据写入、写出功能,且Kafka集群内各节点由于副本机制在进行数据交换时也通过网络进行,因此Kafka集群对网络负载非常敏感,网络阻塞情况下,kafka服务数据将无法及时响应,造成服务延迟增大,影响实际业务,但Kafka自身无网络负载探知功能,因此可以通过设置节点网络负载子模块收集相应的时序监控信息,可以通过编写监控插件通过相应的JMX端口来获取实际Kafka集群的网络负载信息。例如,在一些实施例中,监控插件可以通过{kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec}过滤项获取kafka节点的消息入站速率,通过{kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec}过滤项获取获取kafka节点的消息出站速率,可得到Kafka集群的实际的节点数据出站、入站速率,即为Kafka集群各节点网络实际负载,排除非Kafka集群的网络负载指标,有利于后续的规则判断。
在一些实施例中,获取每一个节点下的数据盘当前的读写负载,进一步包括:
利用预设的过滤项获取多个所述主题的数据的读写速率,并将与同一个数据盘对应的若干个主题的数据的读写速率累加以得到所述同一个数据盘的读写负载。
具体的,可以通过磁盘读写负载子模块对kafka数据盘进行读写负载监测,在实际业务中通常kafka服务往往承担较大的数据流量,对磁盘读写性能较为敏感,但服务自身并无读写负载监测机制,且kafka服务每个节点会配置多个数据盘,因此需要磁盘读写负载子模块针对各个节点的每个数据盘进行磁盘读写监测,收集相应时序监控信息,相应的Kafka各个磁盘读写信息通过编写监控插件在相应的JMX端口来获取实际Kafka集群的磁盘读写负载信息,例如,监控插件可以通过{kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec,topic="+topic}获取kafka主题的消息写入速率,通过{kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec,topic="+topic}获取kafka主题的消息读取速率,并获取Kafka自身所存储的主题元信息,解析对应的主题分配磁盘目录,综合上述监控信息分类解析累计计算各个磁盘负载,可得到实际的Kafka集群的磁盘读写信息,此获取的信息仅仅包含Kafka集群的磁盘读写,排除非Kafka集群的磁盘读写干扰,有利于后续的规则判断。
在一些实施例中,获取每一个节点下的数据盘当前的容量负载,进一步包括:
获取所述数据盘保存的每一个主题数据文件中的数据索引存储的信息大小字段以得到所述主题对应的数据大小,进而得到所述容量负载。
具体的,可以通过磁盘容量探测子模块对各个Kafka节点所配置的数据盘进行容量探测,在数据流量较大的情况下,数据将频繁写入磁盘,磁盘容量将迅速增加,但kafka自身并无容量检测机制,因此需要磁盘容量探测子模块收集相应时序监控信息,磁盘容量均为主题数据战役大小,相应的Kafka各个主题数据大小通过获取Kafka主题数据文件logfile的index数据索引文件存储的消息大小字段message size字段获取中,监控插件通过收集各个主题的index文件的message size信息,从而得到实际的主题数据大小消息,结合主题分区分布情况进而得到Kafka集群实际占用的磁盘容量信息。
在一些实施例中,获取每一个节点下当前的主题分区负载,进一步包括:
获取主题的元信息以得到每一个主题在不同的数据盘中的分区分布信息,根据所述分区分布信息确定每一个数据盘内的主题分区负载。
具体的,可以通过主题分区监测子模块针对Kafka各个节点下数据盘内主题分数数量的监测,kafka主题分区主要依赖其内部的随机、轮询机制进行分配,并无数量感知功能,但是在实际情况中各主题配置不尽相同,往往导致主题分区在部分数据盘过于集中,虽然分区内的数据写入为顺序写入,但分区过多仍将导致磁盘写入效率下降,因此需要主题分区监测子模块探知各个数据盘内的分区数量,以备后续主题规则模块读取,监控插件通过waitOnMetadata()方法获取Kafka主题元信息,得到各节点中主题的分区分布信息,及相应副本的分区分布信息,得到数据磁盘的分区负载,供后续规则判断。
在一些实施例中,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
根据集群的业务场景,确定网络负载指标以及读写负载指标、容量负载指标和主题分区负载指标的优先级;
根据所述优先级确定所述主题配置优化规则。
具体的,主题配置优化规则是依据实际业务情况而定,举例来说,用户可通过优先级对网络负载指标、磁盘读写负载指标、主题分区负载指标、磁盘容量负载指标进行判断的优先排序,对以Kafka集群需满足高吞吐场景为例,上诉四个监测指标重要性排序为:(规则1)网络负载>(规则2)磁盘读写>(规则3)主题分区>(规则4)磁盘容量,实际判断如图2所示,规则判断模块依据优先级进行,首先判断是否达到网络负载限制(规则1),若触发则优先将后续主题数据分配至网络负载较低的节点;其次判断是否达到磁盘读写限制(规则2),若触发则后续主题配置优化规则将后续主题数据优先分配至低读写负载磁盘,而磁盘容量不在首要考虑范围内;随后判断是否达到主题分区限制(规则3),若其主题分区数量过多,也应考虑分配至分区数量较少的数据盘内,替代Kafka自身随机、轮询的分配机制;最后判断是否达到磁盘容量限制(规则4),若触发则优先分配低磁盘使用率的磁盘,最终依据所述主题配置优化规则对主题的数据进行负载均衡。
在一些实施例中,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
分别对所述网络负载指标以及所述读写负载指标、所述容量负载指标和所述主题分区负载指标设置阈值;
响应于所述当前的网络负载以及所述当前的读写负载、所述当前的容量负载和所述当前的主题分区负载中的一个或多个大于阈值,触发调整当前的主题创建配置策略。
具体的,集群均衡规则模块可以允许用户依据需要配置对应的规则触发方式,如磁盘读写超过设定值、磁盘容量超过比例、网络流量超过设定值、主题分区数超过限定值,并依据集群负载感知模块的监测数据来触发主题配置优化模块。例如,用户可以依据需要针对磁盘读写负载进行规则限制,如限制单块磁盘写入速度不高于100MB/s或单节点磁盘写入速度不可高于1GB/s;还可以限制磁盘使用比例,如限制单块数据盘使用量不可高于60%或单节点磁盘使用量不可高于60%;还可以限制单节点网络流入量不可高于1GB/s;还可以限制磁盘内主题分区数量,如限制单块磁盘的分区数量不可高于1000。
本发明提出的方案针对Kafka集群增加检测读写负载、网络负载、主题分区负载、磁盘容量负载的负载感知模块,实时获取集群负载状态,针对集群负载状态,动态调整Kafka主题配置优化规则,降低Kafka集群数据倾斜、单点负载过高、网络阻塞发生的可能性,实现Kafka集群的资源均衡配置、提升集群稳定性。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种kafka集群负载均衡***400,如图3所示,包括:
集群负载感知模块401,所述集群负载感知模块401配置为获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
集群均衡规则模块402,所述集群均衡规则模块402配置为基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
主题配置优化模块403,所述主题配置优化模块403配置为响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
基于同一发明构思,根据本发明的另一个方面,如图4所示,本发明的实施例还提供了一种计算机设备501,包括:
至少一个处理器520;以及
存储器510,存储器510存储有可在处理器上运行的计算机程序511,处理器520执行程序时执行如上的任一种kafka集群负载均衡方法的步骤。
基于同一发明构思,根据本发明的另一个方面,如图5所示,本发明的实施例还提供了一种计算机可读存储介质601,计算机可读存储介质601存储有计算机程序指令610,计算机程序指令610被处理器执行时执行如上的任一种kafka集群负载均衡方法的步骤。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。
此外,应该明白的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个***的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种kafka集群负载均衡方法,其特征在于,包括以下步骤:
获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
2.如权利要求1所述的方法,其特征在于,获取每一个节点当前的网络负载,进一步包括:
利用预设的过滤项获取集群中的每一个节点的入站速率和出站速率以得到所述每一个节点的网络负载。
3.如权利要求1所述的方法,其特征在于,获取每一个节点下的数据盘当前的读写负载,进一步包括:
利用预设的过滤项获取多个所述主题的数据的读写速率,并将与同一个数据盘对应的若干个主题的数据的读写速率累加以得到所述同一个数据盘的读写负载。
4.如权利要求1所述的方法,其特征在于,获取每一个节点下的数据盘当前的容量负载,进一步包括:
获取所述数据盘保存的每一个主题数据文件中的数据索引存储的信息大小字段以得到所述主题对应的数据大小,进而得到所述容量负载。
5.如权利要求1所述的方法,其特征在于,获取每一个节点下当前的主题分区负载,进一步包括:
获取主题的元信息以得到每一个主题在不同的数据盘中的分区分布信息,根据所述分区分布信息确定每一个数据盘内的主题分区负载。
6.如权利要求1所述的方法,其特征在于,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
根据集群的业务场景,确定网络负载指标以及读写负载指标、容量负载指标和主题分区负载指标的优先级;
根据所述优先级确定所述主题配置优化规则。
7.如权利要求6所述的方法,其特征在于,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
分别对所述网络负载指标以及所述读写负载指标、所述容量负载指标和所述主题分区负载指标设置阈值;
响应于所述当前的网络负载以及所述当前的读写负载、所述当前的容量负载和所述当前的主题分区负载中的一个或多个大于阈值,触发调整当前的主题创建配置策略。
8.一种kafka集群负载均衡***,其特征在于,包括:
集群负载感知模块,所述集群负载感知模块配置为获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
集群均衡规则模块,所述集群均衡规则模块配置为基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
主题配置优化模块,所述主题配置优化模块配置为响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
9.一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如权利要求1-7任意一项所述的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行如权利要求1-7任意一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011111109.4A CN112272217B (zh) | 2020-10-16 | 2020-10-16 | 一种kafka集群负载均衡方法、***、设备以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011111109.4A CN112272217B (zh) | 2020-10-16 | 2020-10-16 | 一种kafka集群负载均衡方法、***、设备以及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112272217A CN112272217A (zh) | 2021-01-26 |
CN112272217B true CN112272217B (zh) | 2022-05-24 |
Family
ID=74338362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011111109.4A Active CN112272217B (zh) | 2020-10-16 | 2020-10-16 | 一种kafka集群负载均衡方法、***、设备以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112272217B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112929430B (zh) * | 2021-01-29 | 2023-01-03 | 光控特斯联(上海)信息科技有限公司 | 一种基于物联网通信的数据传输方法及*** |
CN113608870A (zh) * | 2021-07-28 | 2021-11-05 | 北京金山云网络技术有限公司 | 消息队列的负载均衡方法及装置、电子设备及存储介质 |
CN114385081B (zh) * | 2021-12-27 | 2023-03-24 | 联通智网科技股份有限公司 | 针对kafka集群的磁盘保护方法及相关设备 |
CN114500546B (zh) * | 2022-01-25 | 2024-04-30 | 中国农业银行股份有限公司 | 基于负载均衡集群的通信消息发送方法、装置及设备 |
CN116225344B (zh) * | 2023-05-08 | 2024-06-14 | 广州睿帆科技有限公司 | 数据写入方法、装置、***及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106878415B (zh) * | 2017-02-15 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 数据消费的负载均衡方法及装置 |
-
2020
- 2020-10-16 CN CN202011111109.4A patent/CN112272217B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112272217A (zh) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112272217B (zh) | 一种kafka集群负载均衡方法、***、设备以及介质 | |
US10972344B2 (en) | Automated adjustment of subscriber policies | |
CN106452818B (zh) | 一种资源调度的方法和*** | |
EP3777026A1 (en) | Multi-level storage method and apparatus for blockchain data | |
CN107544832B (zh) | 一种虚拟机进程的监控方法、装置和*** | |
EP3361703B1 (en) | Load balancing method, related device and system | |
CN110515539A (zh) | 基于云存储的云磁盘挂载方法、装置、设备和存储介质 | |
CN111857592A (zh) | 基于对象存储***的数据存储方法及装置、电子设备 | |
CN106713396B (zh) | 服务器调度方法和*** | |
CN107026708B (zh) | 数据处理的方法和装置 | |
CN106959820B (zh) | 一种数据提取方法和*** | |
CN112988066B (zh) | 一种数据处理方法及装置 | |
WO2020134364A1 (zh) | 一种虚拟机迁移方法、云计算管理平台和存储介质 | |
CN108206768A (zh) | 集群监测和切换方法及装置 | |
CN111314158B (zh) | 大数据平台监控方法、装置及设备、介质 | |
CN111443867B (zh) | 一种数据存储方法、装置、设备及存储介质 | |
CN111385359A (zh) | 对象网关的负载处理方法及装置 | |
CN114003377A (zh) | 一种基于es服务的内存熔断方法、装置、设备及可读介质 | |
CN117472652A (zh) | 一种云计算运维平台的数据备份方法、装置及*** | |
CN111506425A (zh) | 服务质量数据处理方法和装置 | |
CN109669814A (zh) | 一种元数据服务的恢复方法、装置、设备及可读存储介质 | |
WO2021259064A1 (zh) | 集群的缩扩容方法及***、缩扩容控制终端和介质 | |
CN114915633A (zh) | 公有云网络中调度用户到网关集群的方法、设备及介质 | |
JP2007257645A (ja) | 資産情報の一元管理を行うコンピュータシステム | |
CN108243225A (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 |