Kafka

KafkaConsumer 入门理解

2020-06-23  本文已影响0人  不存在的里皮

在深入源码前,建议先将这些总结看一遍,有一个大概的印象

offset思路

需要理解offset的提交机制、保存。比如commitSync、commitAsync、__consumer_offsets。
深入还能了解offset的恢复。

rebalance理解思路

消费者组需要理解两个角色:

客户端与coordinator间除了发送Join/Sync请求,还有心跳包、提交位移请求。Join和Sync请求会对消费者组的状态产生影响,而心跳包、提交唯一请求会捕获消费者组状态的改变。

KafkaConsumer比KafkaProducer复杂,因为除了基本的发出请求、接收响应、网络IO,还引入了consumer group的概念(分布式消费),组成员的变动就引入了rebalance话题,还需要管理offset,防止丢失读取。这里每个都是话题。

主要组件

Kafka主要分为以下几个组件:


Kafka主要组件

KafkaConsumer不是线程安全的,换句话说,对于组件中的调用,我们不必考虑多线程下的同步,只需以线性方式理解即可。

个人总结几个组件的功能如下:


上一篇 下一篇

猜你喜欢

热点阅读