事件流式处理和消息传送方案通常处理事件或消息有效负载中的结构化数据。 但是,结构化数据对于仅处理字节的事件中转站值不大。 架构驱动的格式(如 Apache Avro、JSONSchema 或 Protobuf)通常用于将结构化数据序列化或反序列化为二进制。
事件生成者使用架构定义序列化事件有效负载并将其发布到事件中转站(如事件中心)。 事件消费者从代理读取事件有效负载,并使用相同的架构定义对其进行反序列化。
生成者和使用者都可以使用相同的架构来验证数据的完整性。
什么是 Azure 架构注册表?
Azure 架构注册表 是事件中心的一项功能,它为事件驱动和以消息传送为中心的应用程序的架构提供中心存储库。 它使生成者和使用者应用程序可以灵活地交换数据,而无需管理和共享架构。 它还为可重用架构提供简单的治理框架,并通过逻辑分组构造(架构组)定义架构之间的关系。
借助 Apache Avro、JSONSchema 和 Protobuf 等架构驱动的序列化框架,将序列化元数据移动到共享架构也有助于 降低每条消息开销。 每个消息不需要包括元数据(如类型信息和字段名称),这不同于标记格式(如 JSON)。
注释
此功能在标准层、高级层中可用。
将架构与事件和事件基础结构一起存储,可确保序列化或反序列化所需的元数据始终可用,并且架构不能错放。
相关内容
- 若要详细了解 Azure 架构注册表,请参阅 Azure 架构注册表概念。
- 若要了解如何使用 Azure 门户创建架构注册表,请参阅使用 Azure 门户创建事件中心架构注册表。
- 请参阅以下 Schema Registry Avro 客户端库 示例。