【发布时间】:2021-09-28 18:24:05
【问题描述】:
我以订阅者可以理解的格式向 kafka 主题 (outputTopic) 发布消息。我现在希望以一种会破坏现有主题消费者的方式修改这些消息的格式。
例如,我发布对象,以 json 格式序列化,但需要更改对象,因此需要更改架构。
管理此类变更的最佳方法是什么?我应该更改生产者以使其发布到新主题(outputTopic2)吗?有没有更好的方法来管理这个?
【问题讨论】:
-
不同的模式通常需要一个单独的主题,但无论哪种方式,Kafka 仍然会接受消息。如果您不想编辑任何消费者代码,则需要这样做
-
Kafka 中存在的旧版本的历史事件对未来的需求很重要?
-
理论上,如果您可以确保支持新模型的消费者从可预测的分区消费,那么您可以将带有新模型的消息路由到这些分区。不过,您需要小心不要弄乱负载平衡。也许路由到消费者群体会有所帮助。
标签: json apache-kafka