【发布时间】:2022-06-14 19:03:33
【问题描述】:
刚开始做kafka,需要用sarama go pkg开发一个consumer客户端,client应该是consumer group的一部分,需要读取A和B两个topic,client需要读取从任何平衡策略分配给它的主题 A 的某些分区中读取,而对于 B,它需要从所有分区中读取(B 有点像广播主题)。
工作流程:
- 消费群xx。
- 我有两个主题 A 和 B,每个主题有 6 个分区 [0,1,2...5]。
- 我在xx有两个消费者C1和C2,数据应该这样读取:
C1 从 A:[0,1,2] 和 B:[0,1,2,3,4,5,6] 读取
C2 读取 A:[3,4,5] 和 B:[0,1,2,3,4,5,6]
注意:如果添加了新客户端,则 A 中的分区应重新平衡,并且应读取 B 中的所有分区。
我尝试实施我的自定义平衡策略但失败了,请告诉我这是否可以做到以及如何做到。
【问题讨论】:
标签: go apache-kafka kafka-consumer-api kafka-topic sarama