You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

kafka的isr原理详解

Kafka的ISR原理详解

Kafka是一种高性能、高可用的分布式消息系统,它支持多个消费者同时消费同一个主题的消息,还具有消息持久化、可靠性和可扩展性等优势。在Kafka中,ISR(In-Sync Replicas)是保证消息复制的一种机制,它主要用于保障数据的可靠性和一致性。

ISR是指在Kafka集群中,每个分区(Partition)的所有副本中,与领导者(Leader)保持同步(In-Sync)的副本集合。当生产者向某个分区发送消息时,值得信任的副本是ISR集合中的副本,而不是所有的副本。在副本数量较多的情况下,只要ISR集合中的副本保持一致,就可以保证消息复制的效率和可靠性。

Kafka的ISR机制有以下几个主要特点:

  1. ISR在副本集合中保持一致性。

  2. ISR在副本数量发生变化后自动更新。

  3. ISR只包含已经提交的消息,不包括未提交的消息

  4. 生产者只向ISR集合中的副本发送消息

下面我们来详细解析一下ISR的原理。

一、ISR的推选

ISR的推选过程是由生产者和ZooKeeper、Broker三方参与的。当ZooKeeper接收到有关某分区的元数据(Metadata)或Leader的信息时,它会将元数据或Leader信息发送给Broker。同时,当这个分区的Leader接到生产者的请求时,它会将消息发送给ISR集合中的所有副本。这个过程如下图所示:

当生产者需要向某个分区发送消息时,它会首先查询这个分区的ISR列表

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
基于 Apache Kafka 构建,提供高可用、高吞吐量的分布式消息队列服务

社区干货

Kafka 消息传递详细研究及代码实现|社区征文

## 背景新项目涉及大数据方面。之前接触微服务较多,趁公司没反应过来,赶紧查漏补缺。Kafka 是其中之一。Apache Kafka 是一个开源的分布式事件流平台,可跨多台计算机读取、写入、存储和处理事件,并有发布和订阅事件流的特性。本文将研究 Kafka 从生产、存储到消费消息的详细过程。 ## Producer### 消息发送所有的 Kafka 服务器节点任何时间都能响应是否可用、是否 topic 中的 partition leader,这样生产者就能发送它的...

Kafka@记一次修复Kafka分区所在broker宕机故障引发当前分区不可用思考过程 | 社区征文

写在前面的话,业务组内研发童鞋碰到了这样一个问题,反复尝试并研究,包括不限于改Kafka,主题创建删除,Zookeeper配置信息重启服务等等,于是我们来一起看看... Ok,Now,我们还是先来一步步分析它并解决它,依然以”... Isr即其自身。这很容易出现单点故障,当当前节点挂了的时候,选举不出新的leader,导致分区不可用。在生产环境的话,可设置多个副本因子来保证高可用性(比如三个节点组成一个集群,副本数量为2,这样当任意一台节点丢失...

聊聊 Kafka:Topic 创建流程与源码分析 | 社区征文

## 一、Topic 介绍Topic(主题)类似于文件系统中的文件夹,事件就是该文件夹中的文件。Kafka 中的主题总是多生产者和多订阅者:一个主题可以有零个、一个或多个向其写入事件的生产者,以及零个、一个或多个订阅这些事... 将配置 --config 解析到 configsMap 中,configsMap 再赋值给 NewTopic 对象中的 configs。- 调用 adminClient 创建 Topic。我们来跟一下 adminClient.createTopics 的源码:```@Overridepublic Create...

字节跳动新一代云原生消息队列实践

相较于 Kafka 省去了 ISR 相关的管理。Controller 可以更加专注地关注集群整体流量均衡及故障检测。在 BMQ 中用户所有请求都会由 Proxy 接入,因此 BMQ 的 Metadata 中的 ‘Broker’ 信息实际上填写的是 BMQ 中 Proxy 的信息,客户端根据 Metadata 请求将生产和消费等请求发送到对应的 Proxy,再由 Proxy 处理或转发。这样的架构有助于 BMQ 做更多的容错工作。例如在 Broker 重启时,Proxy 可以感知到相关错误并进行 **退避重试...

特惠活动

企业直播体验福利包

20G存储+3000分钟时长,乐享1个月
0.00/0.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

kafka的isr原理详解-优选内容

Kafka 消息传递详细研究及代码实现|社区征文
## 背景新项目涉及大数据方面。之前接触微服务较多,趁公司没反应过来,赶紧查漏补缺。Kafka 是其中之一。Apache Kafka 是一个开源的分布式事件流平台,可跨多台计算机读取、写入、存储和处理事件,并有发布和订阅事件流的特性。本文将研究 Kafka 从生产、存储到消费消息的详细过程。 ## Producer### 消息发送所有的 Kafka 服务器节点任何时间都能响应是否可用、是否 topic 中的 partition leader,这样生产者就能发送它的...
Kafka@记一次修复Kafka分区所在broker宕机故障引发当前分区不可用思考过程 | 社区征文
写在前面的话,业务组内研发童鞋碰到了这样一个问题,反复尝试并研究,包括不限于改Kafka,主题创建删除,Zookeeper配置信息重启服务等等,于是我们来一起看看... Ok,Now,我们还是先来一步步分析它并解决它,依然以”... Isr即其自身。这很容易出现单点故障,当当前节点挂了的时候,选举不出新的leader,导致分区不可用。在生产环境的话,可设置多个副本因子来保证高可用性(比如三个节点组成一个集群,副本数量为2,这样当任意一台节点丢失...
聊聊 Kafka:Topic 创建流程与源码分析 | 社区征文
## 一、Topic 介绍Topic(主题)类似于文件系统中的文件夹,事件就是该文件夹中的文件。Kafka 中的主题总是多生产者和多订阅者:一个主题可以有零个、一个或多个向其写入事件的生产者,以及零个、一个或多个订阅这些事... 将配置 --config 解析到 configsMap 中,configsMap 再赋值给 NewTopic 对象中的 configs。- 调用 adminClient 创建 Topic。我们来跟一下 adminClient.createTopics 的源码:```@Overridepublic Create...
字节跳动新一代云原生消息队列实践
相较于 Kafka 省去了 ISR 相关的管理。Controller 可以更加专注地关注集群整体流量均衡及故障检测。在 BMQ 中用户所有请求都会由 Proxy 接入,因此 BMQ 的 Metadata 中的 ‘Broker’ 信息实际上填写的是 BMQ 中 Proxy 的信息,客户端根据 Metadata 请求将生产和消费等请求发送到对应的 Proxy,再由 Proxy 处理或转发。这样的架构有助于 BMQ 做更多的容错工作。例如在 Broker 重启时,Proxy 可以感知到相关错误并进行 **退避重试...

kafka的isr原理详解-相关内容

DescribeTopicPartitions

分区 ISR 状态等信息。 此接口的 API Version 为 2018-01-01。 此接口的调用频率限制为 100 次/s,超出频率限制会报错 “AccountFlowLimitExceeded”。 请求参数参数 参数类型 是否必选 示例值 说明 PageNumber Integer 必选 1 列表的页码。 PageSize Integer 必选 1 列表中每一页的条目数量。 InstanceId String 必选 kafka-**** 实例 ID。 TopicName String 必选 my_topic Topic 名称。 PartitionNumbers List 可选 [1,2] 分区编...

查看 Topic 详情

创建 Topic 后,您可以随时在控制台中查看 Topic 和对应分区的详细信息,包括 Topic 详情、分区信息、消费连接信息。 前提条件已创建消息队列 Kafka版实例。详细操作步骤请参考创建实例。 查看 Topic 详情您可以参考... ISR 已同步消息的副本。 未同步副本 未同步的副本数量,支持筛选存在未同步副本的分区。 起始 offset 消息写入的起始位置。 末端 offset 消息最后写入的位置。 存储消息数量 此分区内存储的消息数量。 ...

字节跳动新一代云原生消息队列实践

相较于 Kafka 省去了 ISR 相关的管理。Controller 可以更加专注地关注集群整体流量均衡及故障检测。在 BMQ 中用户所有请求都会由 Proxy 接入,因此 BMQ 的 Metadata 中的 ‘Broker’ 信息实际上填写的是 BMQ 中 Proxy 的信息,客户端根据 Metadata 请求将生产和消费等请求发送到对应的 Proxy,再由 Proxy 处理或转发。这样的架构有助于 BMQ 做更多的容错工作。例如在 Broker 重启时,Proxy 可以感知到相关错误并进行 **退避重试...

企业直播体验福利包

20G存储+3000分钟时长,乐享1个月
0.00/0.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

ByConity 技术详解之 ELT

实现原理和使用方式等。## ETL场景和方案### ELT与ETL的区别- ETL:是用来描述将数据从来源端经过抽取、转置、加载至目的端(数据仓库)的过程。Transform通常描述在数据仓库中的前置数据加工过程。![pi... 点击流等通过MQ/ Kafka/ Flink将其接入存储系统当中,存储系统又可分为域内的HDFS 和云上的 OSS& S3 这种远程储存系统,然后进行一系列的数仓的ETL操作,提供给 OLAP系统完成分析查询。但有些业务需要从上述的存储中...

Apache Pulsar 在火山引擎 EMR 的集成与场景

详解 Apache Pulsar 在 EMR 的集成方案- Apache Pulsar 典型应用场景、问题与解法- 火山引擎 EMR 集成 Pulsar 的未来规划# 一、业务背景 火山引擎是字节跳动旗下的云服务平台,将字节跳动快速发展... Kafka、ClickHouse、Hudi、Iceberg 等,100% 开源兼容,快速构建企业级大数据平台,降低运维⻔槛。 **火山引擎 EMR 的核心特性包括以下几点:**- 开源兼容 & 开放环境:大数据组件来自开源社区,与开源版本兼容...

20000字详解大厂实时数仓建设 | 社区征文

明细数据或者汇总数据都会存在 Kafka 里面,但是像城市、渠道等维度信息需要借助 Hbase,mysql 或者其他 KV 存储等数据库来进行存储。接下来,根据顺风车实时数仓架构图,对每一层建设做具体展开:---#### 1. ODS... 其原理是一样的。![](https://cdn.jsdelivr.net/gh/sunmyuan/cdn/220116_8.jpeg)数据开一个大的天级窗口,大窗口下又开了一个小的分钟级窗口,数据按数据本身的 Row Time 落到分钟级窗口。Watermark 推进过了窗...

Apache Pulsar 在火山引擎 EMR 的集成与场景

详解Apache Pulsar 在EMR的集成方案- Apache Pulsar 典型应用场景、问题与解法- 火山引擎 EMR 集成 Pulsar 的未来规划# 1. 业务背景火山引擎是字节跳动旗下的云服务平台,将字节跳动快速发展过程中积... Kafka、ClickHouse、Hudi、Iceberg 等,100% 开源兼容,快速构建企业级大数据平台,降低运维⻔槛。火山引擎 EMR 的核心特性包括以下几点:- 开源兼容 & 开放环境:大数据组件来自开源社区,与开源版本兼容。EMR 提...

「火山引擎数据 中台产品双月刊」 VOL.01

新增 Kafka 外表,支持 Kafka Table 作为 Flink Source,将 Kafka 外表数据写入 LAS 内表。![picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/4c47cca05c2a4896b35dd2248b5e4df4~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1716135636&x-signature=CD2w3saaak5xSLNW3FpHiF3JkrQ%3D)- 【新增弹性扩展按量计费能力】支持配置队列规模的最大值(Max)及最小值(Min),随用户的负载而...

火山引擎开发者社区第三届有奖征文大赛获奖作品公布

[万字长文带你弄透Transformer原理|社区征文](https://developer.volcengine.com/articles/7177682610171150392) by [秃头小苏](https://developer.volcengine.com/user/3602452641481880)- [2022技术盘点|... [Kafka 消息传递详细研究及代码实现|社区征文](https://developer.volcengine.com/articles/7173999865460949000) by [不太对味](https://developer.volcengine.com/user/1385835600294141)- [DevOps基于k8...

特惠活动

企业直播体验福利包

20G存储+3000分钟时长,乐享1个月
0.00/0.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

数据智能知识图谱
火山引擎数智化平台基于字节跳动数据平台,历时9年,基于多元、丰富场景下的数智实战经验打造而成
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询