首页 > 解决方案 > 使用 Avro 对象发送数据,使用模式注册表有优势吗?

问题描述

我有一个应用程序,我使用 AVSC 文件生成 avro 对象,然后使用它们生成对象。如果我希望通过在那里生成 pojos,我可以在另一个应用程序中使用相同的模式来消费。这是通过 Avro 插件完成的。我注意到的是模式注册表中不存在模式。

我想如果我改变我的生产者类型/设置,它可能会在那里创建它(我使用的是 kafka spring)。将它放在那里有什么好处吗,我现在正在做的只是数据的序列化,与从数据创建 GSON 对象并生成它们一样吗?

在注册表中没有架构是不好的做法吗?

标签: serializationapache-kafkaavroconfluent-schema-registry

解决方案


要回答这个问题,“是否有优势” - 是的。至少,它允许其他应用程序发现主题中包含的内容,无论这是否是另一个使用 Spring 的 Java 应用程序。

您不需要模式包含在消费者代码库中

你说你正在使用 Confluent 序列化程序,但是没有办法“跳过”模式注册,所以模式应该默认在注册表中的“your_topic-value”下


推荐阅读