7.5. Kafka 생산자 클라이언트에서 스키마 사용
다음 절차에서는 서비스 레지스트리의 스키마를 사용하도록 Java로 작성된 Kafka 생산자 클라이언트를 구성하는 방법을 설명합니다.
사전 요구 사항
- Service Registry가 설치됨
- 스키마가 서비스 레지스트리에 등록됨
절차
서비스 레지스트리의 URL로 클라이언트를 구성합니다. 예를 들면 다음과 같습니다.
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);
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 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1. 서비스 레지스트리에서 제공하는 메시지 키의 serializer입니다.
- 2. Service Registry에서 제공하는 메시지 값에 대한 serializer입니다.
- 3. lookup 전략으로 스키마의 글로벌 ID를 찾습니다.