【问题标题】:Best practice for send message to many applications in kafka [closed]在kafka中向许多应用程序发送消息的最佳实践[关闭]
【发布时间】:2018-10-19 06:49:15
【问题描述】:

我有一个包含许多分区的主题。我希望许多应用程序读取来自该主题的所有消息。一些应用程序经常阅读,而另一些应用程序则在午夜阅读。

对于stackoverflow或书中的这个问题,我没有找到任何帮助。

我如何在 kafka 中实现它?

谢谢

【问题讨论】:

  • 到目前为止你尝试过什么?这个网站上的问题应该更具体。

标签: apache-kafka messaging kafka-consumer-api


【解决方案1】:

您需要 Kafka 消费者才能让您的应用程序使用来自 Kafka 主题的消息。如果您的每个应用程序都需要使用所有消息,那么您必须为每个应用程序分配一个不同的组 ID。

Kafka 将主题的分区分配给组中的消费者。它还保证消息只能由组中的单个消费者读取。分区是 Kafka 中的并行级别(如果您有 2 个分区,那么同一消费者组中最多可以有 2 个消费者)。

示例:
假设您有主题 example-topic,其中包含 5 个分区和 2 个应用程序,每个应用程序都必须使用来自 example-topic 的所有消息。您将需要两个不同的消费者组(每个应用程序一个),例如 group.id=app-group-1 用于第一个应用程序,group.id=app-group-2 用于您的第二个应用程序。在每个消费者组中,您最多可以启动 5 个消费者来消费来自您的主题的消息。因此,最多 5 个消费者将订阅主题 example-topic 并属于 group.id=app-group-1,另外 5 个消费者将订阅主题 example-topic 并属于 group.id=app-group-2

【讨论】:

  • 感谢您的解释。这就是我一直在寻找的。对不起我的英语不好
猜你喜欢
  • 2013-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-04
  • 1970-01-01
  • 2015-07-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多