Kafka进阶(一)
创始人
2025-05-28 17:22:57
0

Kafka以高吞吐量、低延迟、高并发、高可扩展性而自称,并在越来越多的场景中应用。下面聊聊Kafka高可用、高性能、高并发的设计原理。

在这里插入图片描述

1、Kafka高可用设计原理

1.1、控制器

Kafka控制器就是Broker,除了具有一般Broker的功能外,还具有选举主题的分区Leader节点的功能。
在启动Kafka系统的时候,其中一个Broker会被选举为控制器,负责管理主题的分区和副本的状态,还会执行重分配的任务。第一个启动的Broker会在Zookeeper系统里创建一个临时节点/controller,并写入该节点的注册信息,使该节点成为控制器。其他Broker在陆续启动时,也会尝试在Zookeeper系统中创建临时节点/controller,但由于已经存在,会创建失败,确保了Kafka集群中控制器的唯一性。
可见,控制器选举的核心思路是各个节点公平竞争抢占Zookeeper系统中临时节点/controller,最先创建成功的Broker会成为控制器,并拥有选举主题的分区Leader节点的功能。

1.2 、副本机制

副本机制简单来说就是备份机制,在集群中保存着相同的数据备份,提供数据冗余,是Kafka确保系统高可用和高持久的重要基石。
Kafka的分区是多副本的,若其中一个副本丢失了,那么还可以从其他副本中获取分区数据。
在Kafka中,主题(Top

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...