Skip to main content

プロダクション内からの Kafka メッセージの取得

InterSystems IRIS は、相互運用プロダクションに Kafka 受信アダプタを使用するビジネス・サービスが含まれる場合に Kafka コンシューマになります。このアダプタにより、ビジネス・サービスは Kafka トピックからメッセージを取得できます (Kafka メッセージ・オブジェクトとして)。プロダクションを Kafka コンシューマとして使用する場合には、受信アダプタを利用する組み込みのビジネス・サービスを使用する、またはアダプタを使用する独自のビジネス・サービスを構築するという、2 つのオプションがあります。

組み込みのビジネス・サービス

受信アダプタを使用するカスタムのビジネス・サービスを構築するのではなく、管理ポータル設定を使用して、プロダクションに単に EnsLib.Kafka.ServiceOpens in a new tab を追加し、アダプタのプロパティを定義するだけです。ビジネス・サービスが、[ビジネスサービス][呼び出し間隔] 設定で指定した間隔で Kafka からメッセージを取得すると、これらのメッセージは非同期要求を使用してプロダクション内の別のビジネス・ホストに転送されます。これらの要求が転送されるビジネス・ホストは、[基本の設定][ターゲット構成名] 設定で指定されます。

ビジネス・サービスのプロダクションへの追加に関する基本情報は、"ビジネス・ホストの追加" を参照してください。

アダプタの詳細

Kafka 受信アダプタは、クラス EnsLib.Kafka.InboundAdapterOpens in a new tab です。これには以下の設定が含まれており、これらはすべて、管理ポータルにアダプタを使用するビジネス・サービスの設定として表示されます。

  • Topic は、コンシューマがメッセージを取得する Kafka トピックを定義します。

  • GroupID は、コンシューマのコンシューマ・グループ ID を定義します。

  • ReceiveSettings (オプション) は、メッセージ取得の設定を定義する JSON 文字列です。使用できる設定のリストは、Kafka API KafkaReceiveSettings クラスによって使用可能になるプロパティのリストと同じで、各プロパティ名がキーとして機能します。

  • Servers は、Kafka ブローカ・クラスタ内のサーバを指定する、コンマ区切りの IP address:port エントリのリストを定義します。

  • Credentials は、Kafka クライアントのユーザ名とパスワードに対応するインターシステムズ認証情報を定義します。認証情報の作成の詳細は、"設定で使用する再利用可能項目の定義" を参照してください。

  • SecurityProtocol は、Kafka ブローカ・クラスタへの接続を保護するセキュリティ・プロトコルを指定します。現在、このプロパティは以下の 2 つの値をサポートしています。

    • SASL_PLAINTEXT。これは、暗号化されていないチャンネルでクライアントの SASL 認証を実行します。

    • SASL_SSL。指定したトラストストアとキーストアの情報を使用して、SASL 認証が行われる SSL/TLS 接続を確立します。

  • SASLMechanism は、Credentials によって指定された認証情報を使用してコンシューマを認証するために使用される SASL 認証メカニズムを指定します。現在、PLAIN のみがサポートされています。

  • TrustStoreLocation (オプション) は、Kafka ブローカ・クラスタからの証明書を検証し、SSL/TLS 接続を確立するために必要な認証局の証明書を含むトラストストアへのファイル・システム・パスを指定します。

  • TrustStoreCredentials (オプション) は、truststorelocation で指定された場所にあるトラストストアへのパスワードで保護されたアクセスを取得するために使用できる InterSystems 認証情報を定義します。

  • KeyStoreLocation (オプション) は、Kafka ブローカ・クラスタとの SSL/TLS 接続を確立するために必要なキーを含むキーストアへのファイル・システム・パスを指定します。

  • KeyStoreCredentials (オプション) は、keystorelocation で指定された場所にあるキーストアへのパスワードで保護されたアクセスを取得するために使用できる InterSystems 認証情報を定義します。

  • KeyCredentials (オプション) は、keystorelocation で指定された場所にあるキーストア内の秘密鍵へのパスワードで保護されたアクセスを取得するために使用できる InterSystems 認証情報を定義します。

受信アダプタを使用するカスタムのビジネス・サービスの構築に関する一般情報は、"ビジネス・サービスの定義" を参照してください。

関連項目

FeedbackOpens in a new tab