Kafka再平衡-将Kafka消费者分配给分区



当一个新的Kafka使用者加入/离开使用者组时,Kafka运行时会触发一个重新平衡过程,以便执行分区到新使用者集的新分配/映射。关于再平衡过程,我有三个问题:

(1( 除了已经实现的算法之外,是否有可能以某种方式插入自定义的再平衡算法?

(2( 是否可以将外部变量传递给自定义算法?

(3( 除了已知的情况(如消费者离开、加入等(之外,是否有可能动态地、选择性地启动再平衡过程?

  1. 是的,您可以使用partition.assignment.strategy来设置自定义分配算法。自定义类需要实现ConsumerPartitionAssignor

  2. 分配器可以执行任何必要的逻辑来从环境或其他地方检索值。

  3. 自从Kafka 2.6以来,您可以使用enforceRebalance()来触发一个。

最新更新