使用 Avro 对象发送数据,使用模式注册表有优势吗?

Sending data using Avro objects, is there an advantage to using schema registry?

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

我想如果我改变我的制作人 type/settings 它可能会在那里创建它(我正在使用 kafka spring)。把它放在那里有什么好处吗,我现在正在做的只是数据的序列化,这是否与从数据创建 GSON 对象并生成它们一样?

注册表中没有模式是不是不好的做法?

要回答这个问题,"is there an advantage" - 是的。至少,它允许其他应用程序发现主题中包含的内容,无论它是否是另一个使用 Spring 的 Java 应用程序。

您不需要将架构包含在消费者代码库中

你说你正在使用 Confluent 序列化器,但是没有办法 "skip" 模式注册,所以模式应该默认在 "your_topic-value"

下的注册表中