Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

プロダクションから RabbitMQ へのメッセージの送信

InterSystems IRIS は、相互運用プロダクションに RabbitMQ 送信アダプタを使用するビジネス・オペレーションが含まれる場合に RabbitMQ パブリッシャになります。このアダプタにより、ビジネス・オペレーションは RabbitMQ エクスチェンジにメッセージを送信できます。プロダクションを RabbitMQ パブリッシャとして使用する場合には、送信アダプタを利用する組み込みのビジネス・オペレーションを使用する、またはアダプタを使用する独自のビジネス・オペレーションを構築するという、2 つのオプションがあります。

アダプタの詳細

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

  • MQHost は RabbitMQ サーバのホスト名または IP アドレスを定義します。

  • MQPort は、RabbitMQ と通信するためのポート番号を定義します。

  • MQVirtualHost (オプション) は、RabbitMQ の仮想ホスト名を定義します。

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

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

SSL/TLS 構成

RabbitMQ アダプタは両方とも (受信と送信)、SSL/TLS を使用して RabbitMQ と接続するようプロダクションを構成するための追加設定を受け入れます。これらの設定は、アダプタを使用するビジネス・サービスの設定として管理ポータルにも表示されます。

これらの設定の詳細リストについては、RabbitMQ API を使用して RabbitMQ クライアントを構成する手順を参照してください。

RabbitMQ メッセージの送信

送信アダプタにより RabbitMQ に送信されるメッセージのクラスは EnsLib.RabbitMQ.MessageOpens in a new tab です。このクラスには、以下を含め、メッセージを定義するためのいくつかのプロパティが含まれます。

  • exchange は、パブリッシャがメッセージを送信する RabbitMQ エクスチェンジを定義します。

  • routingKey は、エクスチェンジがメッセージをルーティングするために使用するルーティング・キーを定義します。

  • deliveryMode は、メッセージを永続的なものとして扱うか (値が 2 の場合)、一時的なものとして扱うか (値が 2 の場合) を定義します。

  • contentEncoding は、メッセージ・コンテンツのエンコードを定義します (UTF-8 など)。

  • encodedContent は、contentEncoding によって指定されたとおりにエンコードされるメッセージのコンテンツを定義します。

このメッセージ・クラスが利用できるメッセージ・プロパティの詳細な説明は、RabbitMQ のドキュメントOpens in a new tabを参照してください。

送信アダプタの SendMessage() メソッドは、唯一の引数として EnsLib.RabbitMQ.MessageOpens in a new tab オブジェクトを取り、そのメッセージを RabbitMQ サーバに送信します。例えば、カスタムのビジネス・オペレーションは、以下を含めることにより、アダプタのメソッドを呼び出すことができます。

Do ..Adapter.SendMessage(pRequest)

組み込みのビジネス・オペレーション

送信アダプタを使用するカスタムのビジネス・オペレーションを構築するのではなく、管理ポータル設定を使用して、プロダクションに単に EnsLib.RabbitMQ.OperationOpens in a new tab を追加し、アダプタのプロパティを定義するだけです。このビジネス・オペレーションは、プロダクション内の別のビジネス・ホストから要求を受信すると、アダプタの SendMessage() メソッドを呼び出します。この要求には、EnsLib.RabbitMQ.MessageOpens in a new tab のタイプの RabbitMQ メッセージを含める必要があります。

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

関連項目

FeedbackOpens in a new tab