Common Event Infrastructure はイベントの処理を容易にします。
このタスクを実行する理由と時期
Common Event Infrastructure には、イベントの生成、伝搬、パーシスタンス、および消費機能がありますが、実際のイベントは定義しません。システム設計においてイベント・インフラストラクチャーの使用方法を計画する際には、関連するビジネス概念を理解し、この概念をシステム設計の適切なコンポーネントにマップする必要があります。イベント・ソースとイベント・コンシューマーのアーキテクチャーに関連して、イベント・タイプおよびイベント・グループを定義して、イベント管理のセマンティクスを指定する必要があります。
このタスクのステップ
- 各イベント・ソース を識別します。 イベント・ソースは、イベントを作成するアプリケーションです。
イベント・ソースは、イベント・インフラストラクチャーにイベント・オブジェクトを渡します。
イベント・インフラストラクチャーは、イベント・オブジェクトを後で取得できるようデータベースに保管します。
イベント・インフラストラクチャーのロールは、イベント・オブジェクトを必要とするアプリケーションにそのイベント・オブジェクトを渡すことです。
- 各イベント・コンシューマー を識別します。 イベント・コンシューマーは、イベント・オブジェクト内に含まれている情報を使用することができるアプリケーションです。
イベント・コンシューマーは、通常、複数のイベント・ソースのイベントを処理します。
- イベント相関範囲 の階層およびこれらの範囲の ID を識別します。 イベント・コンシューマーは、イベント相関範囲を使用して、イベントを相関付けできます。ECSEmitter クラスは、イベントごとに現在の ID およびイベントの相関範囲の親 ID を保管することにより、相関範囲の階層をサポートします。
注: ECSEmitter および相関範囲の機能は、Common Event Infrastructure 自身ではなく、イベント・サービスによって提供されます。
例えば、Business Process Execution Language (BPEL) アクティビティーは、アクティビティー・インスタンス ID を持つアクティビティーを識別する現行のアクティビティーの相関範囲を開きます。
親の相関範囲は、このアクティビティーが実行されるプロセス・インスタン
スの相関範囲です。
親の相関範囲は、プロセス・インスタンス ID によって識別されます。
- 各イベント・グループ を識別します。 イベント・グループは、特定のタイプのコンシューマーが必要とするすべてのイベントに含まれる特性 (プロパティー値) を定義します。
アクセス制御や配布規則などのポリシーは、イベント・グループに割り当てられ、各ユーザー・グループのイベント・インフラストラクチャーの振る舞いがカスタマイズされます。
WebSphere には、すべてのイベントを含むよう定義されているデフォルトのイベント・グループがあります。
このイベント・グループをすべてのイベント といいます。
以下の図に、これらのオブジェクト間のリレーションシップを示します。
図 1. イベント・ソースのアーキテクチャー (イベントを作成する)、イベント・コンシューマー (イベント・データを使用する)、およびイベント・グループ (各タイプのイベントの特性および関連ポリシーを定義する)