【问题标题】:Can Kafka message consumed by different consumers?Kafka消息可以被不同的消费者消费吗?
【发布时间】:2021-03-12 09:46:18
【问题描述】:

我是卡夫卡的新手。我已经通过kafkaSink 生成了一条名为 foo 的 kafka 消息,Flume 中的一个类。当我想使用这些消息时,我不清楚许多问题: 1.我尝试使用kafka-console-consumer消费message foo,它成功了。我可以在其他地方再次消费message foo吗? 2.相反,我不想再次消费message foo,所以当我尝试与另一个消费者一起消费时,我应该什么都得不到。我该如何做到这一点? 3.如果有两条消息foo和bar怎么办。我可以精确指定消费者吗?(例如,我希望进程A消费message foo,进程B消费message bar。更进一步,可以指定一个消息偏移的范围?和consumer group有关吗?

【问题讨论】:

    标签: apache-kafka


    【解决方案1】:
    1. 我可以在其他地方使用另一个消费者进程再次使用消息 foo 吗?

    是的。通过使用新的消费者组或重置现有消费者组的偏移量,我们可以随意多次使用它。

    2.相反,我不想再次消费消息foo,所以当我尝试与另一个消费者消费时,我应该什么都得不到。我怎么能 实现这个?

    这一切都与消费者组名称相关联,该名称通常与需要这些消息的一个应用程序相关联。我们需要保持相同的消费者组名称,通常提交的偏移量会保留一周(可以更改),因此,我们可以通过保持相同的消费者组名称从 n 个不同的地方运行应用程序 n 次,我们不会再次使用它,除非我们重置偏移量。

    3.如果有两个消息 foo 和 bar 怎么办。我可以精确指定消费者吗?(例如,我希望进程 A 消费消息 foo 和 进程 B 消费消息栏。更进一步,可以 O 指定一个范围 消息偏移量?跟消费群体有关系吗?

    我们始终可以通过将消费者组定位在该偏移量来使用给定分区和偏移量的特定消息。这叫做寻找偏移量,而不是寻找最早或最晚。

    【讨论】:

      猜你喜欢
      • 2020-08-11
      • 1970-01-01
      • 2017-09-23
      • 1970-01-01
      • 2020-04-19
      • 1970-01-01
      • 1970-01-01
      • 2016-11-11
      • 1970-01-01
      相关资源
      最近更新 更多