kafka-11 Coordinator与offset管理和Consumer Rebalance

本文详细介绍了Kafka从0.8版本开始的Offset管理方式,从ZK到内部topic的转变,以及Coordinator的角色和选择机制。同时,讨论了Consumer Group的Rebalance过程,包括range、round-robin和sticky策略,并解析了触发Rebalance的条件。
摘要由CSDN通过智能技术生成

kafka的offset管理

  • kafka在0.8(含)之前的版本都是用ZK来管理offset
    目录结构是:/consumers/<group.id>/offsets//,zk是做分布式系统的协调的,轻量级的元数据存储,不能负责高并发读写,尤其是写操作。
  • kafka在0.8之后的版本是提交offset发送给内部topic:__consumer_offsets
  • 提交过去的时候,key是group.id+topic+分区号,value就是当前offset的值
  • 每隔一段时间,kafka内部会对这个topic进行compact。也就是每个group.id+topic+分区号就保留最新的那条数据即可。而且因为这个 __consumer_offsets可能会接收高并发的请求,所以默认分区50个,这样如果你的kafka部署了一个大的集群,比如有50台机器,就可以用50台机器来抗offset提交的请求压力,就好很多。
    在这里插入图片描述

在这里插入图片描述

kafka之coordinator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值