Apache kafka Apache Kafka重新绑定后的分区和使用者位置

Apache kafka Apache Kafka重新绑定后的分区和使用者位置,apache-kafka,Apache Kafka,我想达到以下效果。 假设我有9个分区分布在3个工作区上。看起来是这样的: 我想做的是,当一台新机器加入消费者群体时。 从而增加了一个新的消费者。我希望重新平衡只将尽可能少的分区移动到新用户 像这样: 查看分区3 6 9如何在新的使用者上结束。 而其他使用者保留了大部分现有分区 这可能吗? 我想做的是在卡夫卡背后建立有状态的系统。 我已经可以这样做了,但当消费者加入或离开时,默认行为只是断开所有连接,然后从头开始重新平衡。 因此,需要制作大量分区来更改使用者。 这些都有意义吗?到目前为止,卡夫

我想达到以下效果。 假设我有9个分区分布在3个工作区上。看起来是这样的:

我想做的是,当一台新机器加入消费者群体时。 从而增加了一个新的消费者。我希望重新平衡只将尽可能少的分区移动到新用户

像这样: 查看分区3 6 9如何在新的使用者上结束。 而其他使用者保留了大部分现有分区

这可能吗? 我想做的是在卡夫卡背后建立有状态的系统。 我已经可以这样做了,但当消费者加入或离开时,默认行为只是断开所有连接,然后从头开始重新平衡。 因此,需要制作大量分区来更改使用者。
这些都有意义吗?

到目前为止,卡夫卡不支持这种功能来进行最小影响的再平衡或部分再平衡。然而,您可以尝试实现自己的分区器逻辑,通过创建一个扩展o.a.k.clients.consumer.AbstractPartitionAssignor的新类并将“partition.assignment.strategy”设置为其路径来实现这一点。

已经有了此功能的建议:已经有了此功能的建议:@MatthiasJ.Sax的注释是正是我想要的:)