7.5. Kafka プロデューサークライアントからのスキーマの使用
この手順では、Apicurio Registry からのスキーマを使用するように Java で書かれた Kafka producer クライアントを設定する方法について説明します。
前提条件
- Apicurio Registry がインストールされている必要があります。
- スキーマは Apicurio Registry に登録されています
手順
Apicurio Registry の URL を使用してクライアントを設定します。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow String registryUrl = "https://registry.example.com/apis/registry/v2"; Properties props = new Properties(); props.putIfAbsent(SerdeConfig.REGISTRY_URL, registryUrl);
String registryUrl = "https://registry.example.com/apis/registry/v2"; Properties props = new Properties(); props.putIfAbsent(SerdeConfig.REGISTRY_URL, registryUrl);
設定するシリアライザーを使用してクライアントを設定し、Apicurio Registry でスキーマを検索する戦略を設定します。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow props.put(CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG, "my-cluster-kafka-bootstrap:9092"); props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, AvroKafkaSerializer.class.getName()); props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, AvroKafkaSerializer.class.getName()); props.put(SerdeConfig.FIND_LATEST_ARTIFACT, Boolean.TRUE);
props.put(CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG, "my-cluster-kafka-bootstrap:9092"); props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, AvroKafkaSerializer.class.getName());
1 props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, AvroKafkaSerializer.class.getName());
2 props.put(SerdeConfig.FIND_LATEST_ARTIFACT, Boolean.TRUE);
3 - 1.Apicurio Registry により提供されるメッセージキーのシリアライザー。
- 2.Apicurio Registry によって提供されるメッセージ値のシリアライザー。
- 3.スキーマのグローバル ID を検索する検索ストラテジー。