WebSphere MQ のメッセージ相関関係子: 持続性のある要求/応答」パターン

WebSphere MQ のメッセージ相関関係子: 持続性のある要求/応答」パターンを使用して、多数のクライアント・アプリケーションからの要求を 1 つのキューで受け入れ、正しいクライアントに応答を返します。その際、トランザクション・フローと永続的 WebSphere MQ メッセージを使用します。

このパターンは永続メッセージおよびトランザクション・フローとの信頼される通信を使用するため、データを喪失すべきでないような更新がメッセージ交換の結果として発生する場合に、これを使用するのが適切です。

パターンの動作を示す図。多数の要求側アプリケーションがブローカーにメッセージを送ります。メッセージがプロバイダーに転送される前に要求側の応答アドレスが保管され、プロバイダーから応答を受け取ったときに復元されます。

ソリューション

ソリューションとしてメディエーション・フローを実装します。その中で、(メッセージ ID で索引付けされた) 各要求メッセージの MQMD ヘッダー情報を保管し、その後、メッセージとそのすべてのヘッダーをプロバイダー・アプリケーションに転送します。 プロバイダーに対するこの要求メッセージは、メッセージ・ヘッダーの応答先部分でブローカーの応答キューを指定します。 標準的な手法に従い、プロバイダー・アプリケーションは、要求メッセージのメッセージ ID を応答メッセージの相関 ID フィールドにコピーすることが想定されています。 応答メッセージを受け取ると、ブローカー・フローは相関 ID を使って保管済み MQMD ヘッダーを取り出し、応答アドレスを使って着信 MQMD ヘッダーを更新します。 このアクションにより、要求側からの最初の返信先アドレスが確実に使用されます。 その後、応答メッセージとそのすべてのヘッダーが要求側に返されます。

このパターンのメッセージ・フローの設計については、以下のセクションをお読みください。

要求フロー
応答フロー
エラー・サブフロー
ログ・サブフロー

関連タスク

このパターンの適用と使用の方法については、以下のセクションをお読みください。

パターンの使用に関する制約
パターンを適用する前に完了するタスク
パターンのパラメーター
パターンを生成した後に完了するタスク