我有一个基于Kafka的事件源应用程序 . 目前我有一个主题,其中包含多种消息类型 . 全部使用JSON进行序列化/反序列化 .
融合的模式注册表看起来像是一种很好的消息类型维护方法,并且在Avro完全兼容模式下,它还提供了一种在我的事件源应用程序中发送消息版本控制的机制 .
最近patch - blog post到4.1.1汇合 . 使用Avro序列化程序/反序列化程序,您可以在一个主题中拥有多种不同类型的消息 .
但是,我还没有看到任何这方面的实例 . 甚至没有一个 .
我的问题是:上述补丁是否真的有效,而不必使用Avro联盟类型(将所有不同类型的消息放在一个单一的模式中并利用联合)?
这种方法如何与Kafka Streaming应用程序一起使用,您需要在其中指定Key和Value Serde?
我应该忘记Avro而只是选择protobuff吗?
1 回答
这是消费者从主题中获取数据的示例,其中发布了不同类型的事件:
这里的重要部分是: