【问题标题】:Kafka and Heterogeneous MessagesKafka 和异构消息
【发布时间】:2015-07-08 13:06:25
【问题描述】:

我正在做一些关于 KafkaAvro 的研究,我有一个关于如何使用 Kafka 处理异构消息的问题。

假设我们有两个 Avro 架构:EmailSentUserLoggedIn。 Kafka 使用它们的最佳方式是什么?

  1. 为每个架构创建一个主题?但是,如果我们有更多的模式,这听起来是个坏主意...
  2. 架构名称(或email_sentuser_logged_in 之类的标识符)存储在KeyedMessage 的键中,并让每个消费者按键过滤?但是每个消费者都必须消费所有的事件,这可能是一个开销......
  3. 别的东西 :)

我希望我的问题很清楚。提前感谢您的帮助!

干杯,

镭。

【问题讨论】:

    标签: architecture avro apache-kafka


    【解决方案1】:

    1st Approach:我认为,这可以在单个主题中完成。您可以根据主题中的分区分离出这两个模式数据集。假设您在主题中创建了 4 个分区。在 1 和 2 中写入 email_sent。在 3 和 4 中写入 user_logged_in。
    一个消费者组将订阅 1 和 2。第二个消费者组将订阅 3 和 4。在这种情况下,没有做不必要的 IO。
    2nd Approach:创建两个单独的主题。

    【讨论】:

    • 我刚刚读到 LinkedIn 使用了超过 32000 个主题,所以第一种方法听起来更好。你怎么看?)
    猜你喜欢
    • 1970-01-01
    • 2019-02-25
    • 1970-01-01
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 2015-03-06
    • 1970-01-01
    • 2019-01-24
    相关资源
    最近更新 更多