首页 > 其他 > 详细

Kafka学习笔记3

时间:2019-11-11 09:57:37      阅读:64      评论:0      收藏:0      [点我收藏+]

Kafka 设计解析(四):Kafka Consumer 解析》学习笔记

High Level Consumer——Kafka High Level Consumer 提供了一个从 Kafka 消费数据的高层抽象,从而屏蔽掉其中的细节并提供丰富的语义:

Kafka 保证同一 Consumer Group 中只有一个 Consumer 会消费某条消息,实际上,Kafka 保证的是稳定状态下每一个 Consumer 实例只会消费某一个或多个特定 Partition 的数据,而某个 Partition 的数据只会被某一个特定的 Consumer 实例所消费。

也就是说 Kafka 对消息的分配是以 Partition 为单位分配的,而非以每一条消息作为分配单元。这样设计的劣势是无法保证同一个 Consumer Group 里的 Consumer 均匀消费数据,优势是每个 Consumer 不用都跟大量的 Broker 通信,减少通信开销,同时也降低了分配难度,实现也更简单。另外,因为同一个 Partition 里的数据是有序的,这种设计可以保证每个 Partition 里的数据可以被有序消费。

Partition、Consumer分配算法:《kafka Consumer均衡算法,partition的个数和消费组组员个数的关系

Consumer Reblance:

目前有三种方式会触发rebalance,1.当consumer group 新增消费者;2.consumer group有消费者退出时,比如主机停机;3.topic新增分区时,分区的数量发生变化时;

kafka consuemr 的 rebalance 机制规定了一个 consumer group 下的所有 consumer 如何达成一致来分配订阅 topic 的每个分区。实现重新负载均衡机制:范围分区和轮询分区;

Kafka学习笔记3

原文:https://www.cnblogs.com/ybonfire/p/11832883.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!