kafka源码(9)-consumer

本文深入探讨了Kafka的消费者协调器,包括消费者协调器和组协调器的角色与功能。消费者协调器负责缓存更新、加入消费组、提交偏移量等任务,而组协调器则选举leader消费者,管理消费偏移量并处理消费者心跳。
摘要由CSDN通过智能技术生成

1.概述

2.重要类

ConsumerMetadata

NetworkClient

ConsumerNetworkClient

ConsumerCoordinator

Fetcher

 

3.协调器

协调器是用来协调消费者工作分配的。消费者启动后,在可以正常消费前,这个阶段的初始化工作。消费者能够正常运转起来,全有赖于协调器。

主要的协调器有如下两个:

1. 消费者协调器(ConsumerCoordinator)

2. 组协调器(GroupCoordinator)

此外还有任务管理协调器(WorkCoordinator),用作kafka connect的works管理

kafka原来consumer信息依赖于zookeeper存储,当代理或消费者发生变化时,引发消费者平衡,此时消费者之间是互不透明的,每个消费者和zookeeper单独通信,容易造成羊群效应和脑裂问题。为了解决这些问题,kafka引入了协调器。

服务端引入组协调器(GroupCoordinator),消费者端引入消费者协调器(ConsumerCoordinator)。每个broker启动的时候,都会创建GroupCoordinator实例,管理部分消费组(集群负载均衡)和组下每个消费者消费的偏移量(offset)。每个consumer实例化时,同时实例化一个ConsumerCoordinator对象,负责同一个消费组下各个消费者和服务端组协调器之前的通信。

3.1 消费者协调器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值