送信および受信との相関の使用例
通常、相関は、プロセス間で通信するために送受信アクティビティで使用されます。 送信および受信アクティビティでは、相関を使用して、受信メッセージが実行時に適切なプロセス・インスタンスと適切に関連していることを確認します。
簡単なユースケースで、送受信アクティビティとの相関関係を使用して、相互に通信するプロセスを設計する方法を探ります。 2つのプロセスを構成するとします: オーダー・プロセスとベンダー・プロセス。 オーダー・プロセスでは、品目のオーダーが開始されます。 これにより、仕入先プロセスが呼び出され、オーダー済アイテムが使用可能かどうかが確認され、アイテムの見積りが取得されます。 オーダー品目が仕入先の在庫で使用可能な場合、仕入先プロセスは、品目の見積とともにオーダー・プロセスにメッセージを送信します。 コールされたプロセスから送信されたレスポンスが正しいコール元のプロセス・インスタンスによって確実に受信されるように、相関が設定されます。
フローの概要:
- Orderプロセスが開始されると、
order id
を含む「相関キー」が初期化されます。order id
は、Orderプロセスのデータ・オブジェクトです。 エンジンは、オーダー・プロセスのそのインスタンスのキーを格納します。 - オーダー・プロセスでは、「送信」アクティビティを使用して、
order id
をベンダー・プロセスに送信します。 - ベンダー・プロセスでは、「送信」アクティビティを使用して
order id
でコールバックします。 - オーダー・プロセスの「受信」アクティビティは、ベンダー・プロセスによって送信された
order id
が、オーダー・プロセス・インスタンスの起動時に初期化された「相関キー」と一致するかどうかをチェックします。order id
が「相関キー」と一致する場合、Orderプロセス・インスタンスによって受信されたレスポンスが、コールされた対応するVendorプロセス・インスタンスからのものであることを確認します。
プロセスが設定されたので、ワークスペースでプロセス・アプリケーションをアクティブ化およびテストできます。 トラッキング・ページから受注および取引先プロセス・インスタンスの実行をトラッキングし、取引先プロセス・インスタンスからのレスポンス・メッセージが対応するオーダー・プロセス・インスタンスによって受信されているかどうかを確認します。 「プロセスのトラッキング」を参照してください。