第1章 Apicurio Registry の概要
この章では、Apicurio Registry の概念と機能を紹介し、レジストリーに格納されているサポート対象のアーティファクトタイプについて詳しく説明します。
- 「Apicurio Registry 2.3 の使用」
- 「Apicurio Registry のスキーマと API アーティファクト」
- 「Apicurio Registry Web コンソールを使用したコンテンツの管理」
- 「クライアント用の Apicurio Registry REST API」
- 「Apicurio Registry ストレージのオプション」
- 「スキーマと Java クライアントシリアライザー/デシリアライザーを使用した Kafka メッセージの検証」
- 「Kafka Connect コンバーターを使用した外部システムへのデータのストリーミング」
- 「Apicurio Registry のデモンストレーション例」
- 「Apicurio Registry で利用可能なディストリビューション」
1.1. Apicurio Registry 2.3 の使用
Apicurio Registry は、イベント駆動型および API のアーキテクチャー全体で標準的なイベントスキーマおよび API 設計を共有するためのデータストアです。Apicurio Registry を使用して、クライアントアプリケーションからデータの構造を切り離し、REST インターフェイスを使用して実行時にデータ型と API の記述を共有および管理できます。
クライアントアプリケーションは、再デプロイする必要なく、実行時に Apicurio Registry との間で最新のスキーマ更新を動的にプッシュまたはプルできます。開発者チームは、Apicurio Registry に対して、すでに運用環境にデプロイされているサービスに必要な既存のスキーマをクエリーしたり、開発中の新しいサービスに必要な新しいスキーマを登録したりできます。
クライアントアプリケーションコードで Apicurio Registry の URL を指定することにより、クライアントアプリケーションが Apicurio Registry に保存されているスキーマと API 設計を使用できるようにすることができます。Apicurio Registry は、メッセージのシリアル化と逆シリアル化に使用されるスキーマを保存できます。これらのスキーマはクライアントアプリケーションから参照され、クライアントアプリケーションが送受信するメッセージがそれらのスキーマと互換性があることを確認します。
Apicurio Registry を使用して、アプリケーションからデータ構造を切り離し、メッセージ全体のサイズを減らすことでコストを削減して、組織内のスキーマおよび API 設計の一貫性を高めて効率化します。Apicurio Registry は、開発者および管理者がレジストリーコンテンツの管理を簡単に行えるように Web コンソールを提供します。
オプションのルールを設定して、Apicurio Registry コンテンツの進化を管理できます。これらには、アップロードされたコンテンツが有効であること、または他のバージョンと互換性があることを確認するためのルールが含まれます。新しいバージョンを Apicurio Registry にアップロードする前に、設定されたすべてのルールに合格する必要があります。これにより、無効または互換性のないスキーマまたは API 設計に時間が費やされることはありません。
Apicurio Registry は、Apicurio Registry オープンソースコミュニティープロジェクトに基づいています。詳細は https://github.com/apicurio/apicurio-registry を参照してください。
Apicurio Registry 機能
- Apache Avro、JSON スキーマ、Google Protobuf、AsyncAPI、OpenAPI などの標準イベントスキーマおよび API 仕様の複数のペイロード形式。
- AMQ Streams または PostgreSQL データベースのプラグイン可能な Apicurio Registry ストレージオプション。
- Apicurio Registry のコンテンツが時間の経過とともにどのように進化するかを管理するための、コンテンツの検証、互換性、整合性に関するルール。
- Web コンソール、REST API、コマンドライン、Maven プラグイン、または Java クライアントを使用した Apicurio Registry コンテンツ管理。
- 外部システム用の Kafka Connect との統合を含む、完全な Apache Kafka スキーマレジストリーサポート。
- 実行時にメッセージタイプを検証する Kafka クライアントシリアライザー/デシリアライザー (SerDes)。
- 既存の Confluent スキーマレジストリークライアントアプリケーションとの互換性。
- メモリーフットプリントが低く、デプロイメントの時間が高速化されるクラウドネイティブ Quarkus Java ランタイム
- OpenShift での Apicurio Registry の Operator ベースのインストール。
- Red Hat Single Sign-On を使用した OpenID Connect (OIDC) 認証