Scala 在Akka流中分享消费者,同时保留Kafka';s分区重新平衡功能

Scala 在Akka流中分享消费者,同时保留Kafka';s分区重新平衡功能,scala,apache-kafka,akka-stream,Scala,Apache Kafka,Akka Stream,在我的应用程序中,我们创建了很多流和很多消费者(每个流一个)。我试图对所有流只使用一个消费者。我是这样做的: Consumer .committableExternalSource( consumer, Subscriptions.assignment(new TopicPartition("topic", 0), group, 50.seconds) ) 这里的问题是我不想手动分配分区。我希望能够通过消费者,但使用卡夫卡的自动分区分配。所以我试着这样做: Consumer

在我的应用程序中,我们创建了很多流和很多消费者(每个流一个)。我试图对所有流只使用一个消费者。我是这样做的:

Consumer
  .committableExternalSource(
    consumer, Subscriptions.assignment(new TopicPartition("topic", 0), group, 50.seconds)
  )
这里的问题是我不想手动分配分区。我希望能够通过消费者,但使用卡夫卡的自动分区分配。所以我试着这样做:

Consumer
  .plainPartitionedSource(KafkaConfigurations.consumerSettings(group), Subscriptions.topics("topic"))
  .map {
    case (topicPartition, source) =>
      Consumer
        .committableExternalSource(consumer, Subscriptions.assignment(topicPartition), group, 50.seconds)
  }.flatMapMerge(10, identity)

但是,我想在使用
plainPartitionedSource
时,我仍然会为每个源创建一个消费者,因此,问题是,是否可以使用此方法或类似方法实现,或者是否必须创建一个不同的(自定义)此用例的实现。

我遇到了完全相同的问题-为了共享使用者,出于某种原因,必须手动分配分区。你在哪里能找到解决办法?有没有解决办法?