第 1 章 Apicurio Registry 简介
本章论述了 Apicurio Registry 概念和功能,并提供有关存储在 registry 中的受支持构件类型的详情:
- 第 1.1 节 “Apicurio Registry 概述”
- 第 1.2 节 “Apicurio Registry 中的模式和 API 工件和组”
- 第 1.3 节 “使用 Apicurio Registry Web 控制台管理内容”
- 第 1.4 节 “registry 核心 REST API 概述”
- 第 1.5 节 “Apicurio Registry 存储选项”
- 第 1.6 节 “使用 Kafka 客户端 serializers/deserializers 验证模式”
- 第 1.7 节 “使用 Kafka Connect converters 将数据流传输到外部系统”
- 第 1.8 节 “Apicurio Registry 演示示例”
- 第 1.9 节 “Apicurio Registry 可用发行版本”
1.1. Apicurio Registry 概述 复制链接链接已复制到粘贴板!
Apicurio Registry 是用于跨 API 和事件驱动的架构共享标准事件模式和 API 设计的数据存储。您可以使用 Apicurio Registry 将数据的结构与客户端应用程序分离,并使用 REST 接口在运行时共享和管理您的数据类型和 API 描述。
例如,客户端应用程序可在运行时动态推送或拉取最新的 schema 更新到 Apicurio Registry,而无需重新部署。开发人员团队可以查询注册表中已在生产中部署的服务所需的现有模式,并可注册开发新服务所需的新模式。
您可以通过在客户端应用程序代码中指定 registry URL,启用客户端应用程序使用存储在 Apicurio Registry 中的 schema 和 API 设计。例如,registry 可以存储用于序列化和反序列化消息的 schema,然后可从客户端应用程序引用这些消息,以确保它们发送和接收的消息与这些架构兼容。
使用 Apicurio 注册表将数据结构与您的应用程序分离,通过减少总体消息大小来降低成本,并通过增加组织内的模式和 API 设计的一致性重复使用来提高效率。Apicurio Registry 提供了一个 Web 控制台,可供开发人员和管理员轻松管理 registry 内容。
另外,您可以配置可选规则来管理 registry 内容的演进。例如,这些规则包括确保上传的内容语法和语义有效的规则,或者向后兼容其他版本。任何配置的规则都必须在将新版本上传到 registry 之前进行,这样可确保不会产生无效或不兼容的 schema 或 API 设计的时间。
Apicurio Registry 基于 Apicurio Registry 开源社区项目。详情请查看 https://github.com/apicurio/apicurio-registry。
Apicurio Registry 功能
- 标准事件模式和 API 规格的多个有效负载格式
- AMQ Streams 或 PostgreSQL 数据库中的可插拔 registry 存储选项
- 使用 Web 控制台、REST API 命令、Maven 插件或 Java 客户端进行注册表内容管理
- 管理 registry 内容随时间变化的内容验证和版本兼容性的规则
- 完整的 Apache Kafka 模式 registry 支持,包括与外部系统的 Kafka 连接集成
- Kafka 客户端 serializers/deserializers (Serdes)在运行时验证消息类型
- 云原生 Quarkus Java 运行时,用于低内存占用和快速部署速度
- 与现有的 Confluent 或 IBM schema registry 客户端应用程序兼容
- OpenShift 中基于 Operator 的 Apicurio Registry 安装
- 使用 Red Hat Single Sign-On 的 OpenID Connect (OIDC)验证