Chapter 5. Service Registry

Service Registry is available as a Technology Preview feature in Red Hat Integration 2020.Q1. Service Registry is a datastore for standard event schemas and API designs that is based on the Apicurio Registry open source community project. Developers can use Service Registry to manage and share the structure of their data using a REST interface. For example, client applications can dynamically push or pull the latest updates to or from Service Registry without needing to redeploy.

You can also use Service Registry to create rules that govern how registry content evolves over time. For example, this includes rules for content validation and version compatibility.

Important

Technology Preview features are not supported with Red Hat production service-level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend implementing any Technology Preview features in production environments.

This Technology Preview feature provides early access to upcoming product innovations, enabling you to test functionality and provide feedback during the development process. For more information about support scope, see Technology Preview Features Support Scope.

5.1. Enhancements

Service Registry provides the following enhancements in this Technology Preview:

Maven plug-in
Integrates Service Registry functionality with a standard Maven build and provides register and download actions.
Kafka Streams storage
Supports storage in Red Hat AMQ Streams 1.4 or 1.3 using a Kafka Streams-based image.
Kafka Connect
Provides Kafka Connect converters for Apache Avro and Kafka Connect JSON schemas.
Additional serializer/deserializers (SerDes)
  • JSON Schema SerDes - Supports optional validation during serialization/deserialization.
  • Protobuf SerDes - Uses the File Descriptor and DynamicMessage support in Google Protobuf to implement serialization/deserialization.
Additional artifact types
  • Protobuf File Descriptor - An additional artifact type that stores the binary Protobuf File Descriptor format.
  • GraphQL - GraphQL schema artifacts can be added to Service Registry. Syntax validation is supported.
  • Kafka Connect schema - Kafka Connect has its own schema format for JSON data, which is similar to Avro. Syntax validation is supported.
Artifact lifecycle states
Artifacts have the following states: ENABLED, DISABLED, and DEPRECATED. The Registry REST API has a new endpoint to manipulate the state of an artifact.
Canonicalization
When searching for an artifact version by content, Service Registry canonicalizes the content so that it does not need to be byte-identical. The content only needs to be functionally equivalent.
New user documentation