搜索

第 3 章 迁移 Service Registry 客户端应用程序

download PDF

您必须检查现有的 Service Registry 客户端应用程序,以确保 Maven 依赖项和 Java 客户端配置满足版本 2.x 的新要求。例如,这包括 Service Registry Java REST 客户端库或 Kafka 客户端序列化器(Serdes)库的新 Maven 依赖项。您还必须使用新的 registry v2 API 路径更新 Java 应用程序配置。

先决条件

  • 使用 SerDe 现有 Service Registry 1.1 Java 客户端应用程序或 Kafka 客户端制作者和消费者 Java 应用程序

流程

  1. 如果使用 Service Registry Java REST 客户端,您必须更改 Service Registry Java 客户端库的 Maven 依赖项,该库已在版本 2.x 中重新打包:

    <dependency>
        <groupId>io.apicurio</groupId>
        <artifactId>apicurio-registry-client</artifactId>
        <version>2.5.10.Final-redhat-00001</version>
    </dependency>
  2. 在 Java 客户端应用程序中,您必须更改 registry URL 配置,从指向现有的 v1 API 路径到新的 v2 路径。例如:

    public class ClientExample {
    
        private static final RegistryRestClient client;
    
         public static void main(String[] args) throws Exception {
            // Create a registry client
            String registryUrl = "https://new-registry.my-company.com/apis/registry/v2";
            RegistryClient client = RegistryClientFactory.create(registryUrl);
        }
    }

    您可以在 Service Registry 用户指南 中找到有关 Java 客户端的更多详细信息。

  3. 如果使用 Service Registry SerDes 库,您必须更改 Maven 依赖项,这些依赖项已在版本 2.x 中重新打包。在 Service Registry 1.1 中,SerDes 库只由一个 Maven 依赖项提供:

    <dependency>
        <groupId>io.apicurio</groupId>
        <artifactId>apicurio-registry-utils-serde</artifactId>
        <version>1.3.2.Final-redhat-00002</version>
    </dependency>

    在 Service Registry 2.x 中,SerDes 库被分成三个 Maven 依赖项,每个支持的数据格式都有一个: avroprotobufjson 模式,具体取决于您的用例:

    <dependency>
        <groupId>io.apicurio</groupId>
        <artifactId>apicurio-registry-serdes-avro-serde</artifactId>
        <version>2.5.10.Final-redhat-00001</version>
    </dependency>
    <dependency>
        <groupId>io.apicurio</groupId>
        <artifactId>apicurio-registry-serdes-protobuf-serde</artifactId>
        <version>2.5.10.Final-redhat-00001</version>
    </dependency>
    <dependency>
        <groupId>io.apicurio</groupId>
        <artifactId>apicurio-registry-serdes-jsonschema-serde</artifactId>
        <version>2.5.10.Final-redhat-00001</version>
    </dependency>
  4. 在 Kafka 生成者和消费者 Java 应用程序中,您必须更改 registry URL 配置,将其从指向现有的 v1 API 路径改为指向新的 v2 路径。例如:

    现有 registry v1 API 路径

    props.putIfAbsent(AbstractKafkaSerDe.REGISTRY_URL_CONFIG_PARAM, "http://old-registry.my-company.com/api");

    新 registry v2 API 路径

    props.putIfAbsent(SerdeConfig.REGISTRY_URL, "http://new-registry.my-company.com/apis/registry/v2");

    重构的 SerDes 库还包括其他对配置属性的重要更改。有关 SerDes 配置的详情,请参阅 Service Registry 用户指南

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.