【问题标题】:Kafka consumer group.id multiple messagesKafka 消费者 group.id 多条消息
【发布时间】:2017-10-19 18:29:34
【问题描述】:

我已经开发了一个 Kafka 消费者,并且该消费者的多个实例将在生产中运行。我知道我们如何使用 group.id 来避免重复数据处理。有没有办法让所有消费者都收到消息但向一个消费者发送领导位?

有没有办法让每个主题甚至主题中的每个键都有一个 group.id?

【问题讨论】:

  • 为什么不为每个消费者使用不同的组 ID?
  • 我想让所有消费者在他们的内存中保持相同的记录一段时间。到时候,我希望其中一位消费者将他们的记录提交到数据库,但只有一个。所以似乎最好的路线是没有 group.id 用于消息,但是 group.id 用于提交消息。这样只有一个消费者提交。这是一个独特的商业案例,我不确定是否需要确切的配置。
  • 后期评论:将他们的记录提交到数据库 -- 这就是 Kafka Connect 的用途,不知道为什么要在 .NET 客户端中这样做

标签: apache-kafka kafka-consumer-api


【解决方案1】:

看起来这与卡夫卡无关。您已经知道,通过为每个消费者提供一个唯一的 group.id,所有消费者实例都将获得来自该主题的所有消息。现在就推送到 DB 而言 - 您可以排除该逻辑并尝试使用 distributed lock 以便应用程序的推送到 DB 部分只能由其中一个消费者执行。这是基于 Java 的设置吗?

【讨论】:

  • 不,它是 .NET。我正在使用 confluent.kafka 库。锁听起来像是要走的路。
猜你喜欢
  • 1970-01-01
  • 2018-06-04
  • 2017-09-23
  • 1970-01-01
  • 2019-08-09
  • 1970-01-01
  • 1970-01-01
  • 2017-11-09
  • 1970-01-01
相关资源
最近更新 更多