第 1 章 Service Registry 简介


本章介绍了 Service Registry 概念和功能,并提供了有关存储在 registry 中支持的工件类型的详情:

1.1. 什么是 Service Registry?

Service Registry 是一个数据存储,用于在事件驱动的和 API 架构间共享标准事件模式和 API 设计。您可以使用 Service Registry 将数据的结构与客户端应用程序分离,并使用 REST 接口在运行时共享和管理您的数据类型和 API 描述。

客户端应用程序可以在运行时动态推送或从 Service Registry 拉取最新的模式更新,而无需重新部署。开发人员团队可以查询已在生产环境中部署的服务所需的现有模式,并可在开发中注册新服务所需的新模式。

您可以通过在客户端应用程序代码中指定 Service Registry URL 来启用客户端应用程序使用存储在 Service Registry 中的模式和 API 设计。Service Registry 可以存储用于序列化和反序列化消息的模式,这些消息从客户端应用程序引用,以确保它们发送和接收的信息与这些模式兼容。

使用 Service Registry 将数据结构与应用程序分离,通过降低整个消息大小来降低成本,并通过提高整个机构内的 schema 和 API 设计的一致性重复使用来创建费用。Service Registry 提供了一个 Web 控制台,可方便开发人员和管理员管理 registry 内容。

您可以配置可选规则来管理 Service Registry 内容的演进。这包括规则,以确保上传的内容有效,或者与其他版本兼容。任何配置的规则都必须在上传到 Service Registry 之前传递,这样可确保不会在无效或不兼容的模式或 API 设计中造成时间。

Service Registry 基于 Apicurio Registry 开源社区项目。详情请查看 https://github.com/apicurio/apicurio-registry

Service Registry 功能

  • 标准事件模式和 API 规格的多个有效负载格式,如 Apache Avro、JSON Schema、Google Protobuf、AsyncAPI、OpenAPI 等。
  • AMQ Streams 或 PostgreSQL 数据库中可插拔的 Service Registry 存储选项。
  • 内容验证和版本兼容性的规则,以管理 Service Registry 内容如何随时间变化。
  • 使用 Web 控制台、REST API、命令行、Maven 插件或 Java 客户端管理 Service Registry 内容。
  • 完整的 Apache Kafka 模式 registry 支持,包括与外部系统的 Kafka Connect 集成。
  • Kafka 客户端序列化器/反序列化器(SerDes)在运行时验证消息类型。
  • 与现有 Confluent 模式 registry 客户端应用程序兼容。
  • 云原生 Quarkus Java 运行时,用于低内存占用和快速部署时间。
  • 基于 Operator 在 OpenShift 上安装 Service Registry。
  • 使用红帽单点登录的 OpenID Connect (OIDC)身份验证。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.