Kafka重新平衡旨在将主题的所有分区重新分配给订阅者组活动成员,以便任何主题分区仅由一位消费者使用给定的时刻。因此,在情况下,如果消费者刚刚订阅的话题,一切都清楚了,但消费者的API还提供了一种特定的分区分配给消费者:Kafka在组中的一个用户被严格分配到特定分区的情况下重新平衡
void assign(Collection<TopicPartition> partitions)
现在让我们假设有:
- 用5个分区的主题:1,2,3,4,5
- 与3个成员一消费群:1,2,3
- 构件1和2具有刚刚订阅到主题,我MBER 3 已分配分区1到自身
因此,如何再平衡将在这种情况下工作吗?是否将分区1始终分配给成员3(处于活动状态时),结果其他成员只能从其他分区(2,3,4,5)读取?组协调员还可以为成员3分配另一个分区吗?如果会员3出现故障并且随后回来,分区1会发生什么情况?
在此先感谢