次の簡略化したQueued Shipping例を使用して統合点を示します。この例では、タイプOrder[received]のメッセージすべてがOrdersシステムからShippingシステムに渡されます。
この例では、Hubで実行されるOracle WorkflowのBusiness Event Systemが、Take OrderアプリケーションとAllocate Stockアプリケーションの間の通信を実装します。メッセージ伝播は、Take OrderアプリケーションとBESの間、およびBESとAllocate Stockアプリケーションの間に設定されます。これらのインスタンスは、適切なイベントがローカルで起動した際に、Hubに送信されるよう設定され、イベントの受信によりメッセージが適切なターゲットに配布されるようになります。BESがHubでどのように動作するかの詳細は、「BESおよびハブについて」を参照してください。
図1の例の方法を実装するには、ハブ上のBESに次の要素の定義を含める必要があります。
Orders
システム
Shipping
システム
Hub
システム
Order[received]
イベント
Take Order
アクティビティがメッセージの送信に使用するout
チャネル
Allocate Stock
アクティビティがメッセージの受信に使用するin
チャネル(これにより、BESにOrders
システムのout
チャネルからShipping
システムのin
チャネルにOrder[new]
イベントを送信するように指示します)
BESではチャネルは、伝播のある、メッセージ送信のためのキューとして実装されます。図2を参照してください。
複数インスタンスの統合点は、ソース・システムまたはターゲット・システム、あるいはその両方の複数インスタンスが存在する場所に発生します。ソース・システムの複数インスタンスの追加は、複数のシステムの1つが、特定のタイプのイベントを呼び出し、指定されたターゲットにそのイベントを送信する可能性があることを意味します。
ターゲット・システムの複数インスタンスを追加すると、メッセージ・ルーティングにパラメータが追加されます。このパラメータは、メッセージを受信するインスタンスを判断します。図1に示した単純な統合点の例を使用し、Shippingシステムの複数インスタンスがあると想定します。ShippingシステムへのOrder[received]メッセージのルーティングには、2つの選択肢があります。
ブロードキャスト・モードでは、イベントの受信は各Shippingインスタンスの入力チャネルにメッセージを送信するOrder[received]に対して定義されます。
非ブロードキャスト・モードでは、メッセージの正しい受信者を判断するために、メッセージの内容をワークフローで評価する必要があります。BESは、ワークフローを起動する適切なイベントに対する受信を保持します。 これは、受信者を判断するためのカスタム評価関数を使用してメッセージを評価します。
Copyright © 1997, 2004, Oracle. All rights reserved.