1.6. 스키마 및 Java 클라이언트 직렬화기/deserializers를 사용하여 Kafka 메시지 검증
Kafka 생산자 애플리케이션은 serializers를 사용하여 특정 이벤트 스키마를 준수하는 메시지를 인코딩할 수 있습니다. 그런 다음 Kafka 소비자 애플리케이션은 deserializers를 사용하여 특정 스키마 ID를 기반으로 올바른 스키마를 사용하여 메시지를 직렬화했는지 검증할 수 있습니다.
그림 1.2. Service Registry 및 Kafka 클라이언트 SerDes 아키텍처
Service Registry에서는 Kafka 클라이언트 직렬화기/deserializers(SerDes)를 제공하여 런타임 시 다음 메시지 유형을 검증합니다.
- Apache Avro
- Google Protobuf
- JSON Schema
Service Registry Maven 리포지토리 및 소스 코드 배포에는 Kafka 클라이언트 애플리케이션 개발자가 서비스 레지스트리와 통합하는 데 사용할 수 있는 이러한 메시지 유형에 대한 Kafka SerDes 구현이 포함됩니다.
이러한 구현에는 지원되는 각 메시지 유형에 대한 사용자 지정 Java 클래스(예: io.apicurio.registry.serde.avro
)가 포함되며 유효성 검사를 위해 런타임 시 서비스 레지스트리에서 스키마를 가져오는 데 사용할 수 있습니다.