首页 > 其他分享 >kafka高可用设计

kafka高可用设计

时间:2023-07-06 15:36:33浏览次数:31  
标签:副本 可用 ISR Broker Kafka follower 设计 kafka leader

 一、集群:

       

 

Kafka 的服务器端由被称为 Broker 的服务进程构成,即一个 Kafka 集群由多个 Broker 组成

这样如果集群中某一台机器宕机,其他机器上的 Broker 也依然能够对外提供服务。这其实就是 Kafka 提供高可用的手段之一

 

二、备份机制

          

Kafka 中消息的备份又叫做 副本(Replica)

Kafka 定义了两类副本:

  领导者副本(Leader Replica)

  追随者副本(Follower Replica)

         

ISR(in-sync replica)需要同步复制保存的follower

如果leader失效后,需要选出新的leader,选举的原则如下:

  第一:选举时优先从ISR中选定,因为这个列表中follower的数据是与leader同步的

  第二:如果ISR列表中的follower都不行了,就只能从其他follower中选取

 

极端情况,就是所有副本都失效了,这时有两种方案

   第一:等待ISR中的一个活过来,选为Leader,数据可靠,但活过来的时间不确定

  第二:选择第一个活过来的Replication,不一定是ISR中的,选为leader,以最快速度恢复可用性,但数据不一定完整

 

标签:副本,可用,ISR,Broker,Kafka,follower,设计,kafka,leader
From: https://www.cnblogs.com/fxzm/p/17532257.html

相关文章

  • Qt 四种程序的架构设计方法
    四种常见的关于Qt程序的架构设计方法:1.使用MVC设计模式MVC是Model-View-Controller的缩写,是应用程序开发中常用的设计模式。在Qt中,可以使用QAbstractItemModel和QTreeView等类来实现MVC模式。 2.使用信号和槽机制Qt中的信号和槽机制是一种灵活的方式,可以将不同的组件连接在......
  • kafka分区机制
      Kafka中的分区机制指的是将每个主题划分成多个分区(Partition)可以处理更多的消息,不受单台服务器的限制,可以不受限的处理更多的数据 每一个分区都是一个顺序的、不可变的消息队列,并且可以持续的添加。分区中的消息都被分了一个序列号,称之为偏移量(of......
  • Python3 使用confluent_kafka实现异步向Kafka中写入数据
    使用的python包pipinstallconfluent-kafka创建topic&&扩充partition#!/usr/bin/envpython#-*-coding:utf-8-*-#@Time:2023/2/616:48#@Software:PyCharm__author__="JentZhang"importjsonfromconfluent_kafka.adminimportAdminClient,......
  • C++程序课程设计任务书[2023-07-06]
    C++程序课程设计任务书[2023-07-06]C++程序课程设计任务书班级学号姓名一、实践目的该实践在系统学习《C++程序设计基础》课程后进行。通过本实践,培养学生使用C++解决实际问题的能力。二、实践任务与要求(任选一个任务,独立完成)任务一:(一)......
  • C/C++数据结构与算法课程设计[2023-07-03]
    C/C++数据结构与算法课程设计[2023-07-03]数据结构与算法课程设计一、课程设计的目的、要求和任务 本课程设计是为了配合《数据结构与算法》课程的开设,通过设计完整的程序,使学生掌握数据结构的应用、算法的编写等基本方法。1.课程的目的(1)使学生进一步理解和掌握课堂上所学......
  • JAVA设计模式之原型模式
    设计模式设计模式(DesignPattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、......
  • kafka安装和配置
    先安装zookeeper:Kafka对于zookeeper是强依赖,保存kafka相关的节点数据,所以安装Kafka之前必须先安装zookeeperDocker安装zookeeper:拉取镜像:dockerpullzookeeper:3.4.14创建容器:dockerrun-d--namezookeeper-p2181:2181zookeeper:3.4.14Docker安装kafka:......
  • 业务中的内容审核机制如何设计比较合理?
    内容包含文字,图片,视频.在第一次创建的时候状态为待审核,业务中创建审核事件,等机器审核,或人工审核.(因为是新创建,本次审核对整条内容进行审核).下面是通过后,再修改,需再次审核的一些问题.通过后,后续用户修改了内容,比如只修改了其中一个标题,或一段文字,或包含的一张图片,......
  • Jmeter学习之八_测试kafka
    Jmeter学习之八_测试kafka背景最近在持续学习.昨天学习了grafana展示Jmeter测试数据库的结果今天想着能够测试一下kafka验证一下kafka的吞吐量等信息说干就干的.遇到的坑本来计划使用pepper-box或者是kafkameter进行相关的测试工作但是发现资料都比较陈旧,耗费了非......
  • 教学软件设计方案及程序
    很多人在教学行业使用久远,在教学道路上缺少很多多媒体工具:例如计算器,多媒体助手等,今天推荐一款软件,作者原创开发,C#编译,可教学使用,不可商用!软件下载(推荐,下载不限速):https://www.123pan.com/s/e7LDVv-ImFmH.htmlgithub:https://github.com/da0505/C-sharp软件代码(本代码已经过测......