COM+キューコンポーネントとパーティション
COM+キューコンポーネントサービスは、パーティションの概念を完全にサポートします。 つまり、パーティション内のキューに置かれたコンポーネントが実行されると、メッセージがキューに置かれ、コンポーネントは最終的にコンポーネントのパーティション内で実行されます。
パーティション分割されたコンポーネントのキュー名
従来、キューに置かれたコンポーネントサービスは、アプリケーション名をキュー名として使用します。 つまり、コンピューターにアプリケーション名のインスタンスが1つしか存在しないパーティション以外のシナリオでは、各アプリケーション名に独自のメッセージキューがあります。
ただし、コンピューターに同じアプリケーション名のインスタンスが複数存在する可能性があるパーティションの場合、キューに置かれたコンポーネントサービスは、同じアプリケーション名を共有するキューに置かれたコンポーネントに対して同じキューを使用します。
キューに置かれたコンポーネントのアクティブ化
次のように、キューに置かれていないコンポーネントをアクティブ化するためにパーティションIDを使用する方法と同じ規則が、キューに置かれたコンポーネントにも適用されます。
- キューに置かれたコンポーネントをアクティブ化するためにモニカーが使用され、パーティションIDが含まれている場合は、このパーティションIDを使用してパーティションが特定されます。 このパーティションIDは、アクティブ化されているコンポーネントのコンテキストに存在する可能性のあるパーティションIDよりも優先されます。
- コンポーネントをアクティブ化するためにモニカーが使用されていない場合は、オブジェクトのコンテキストにあるパーティションIDが使用されます。
- オブジェクトのコンテキストにパーティションIDが存在しない場合は、Active Directory内の既定のユーザーとパーティションのマッピングが使用されます。
Note
サーバーコンピューターがネットワークから切断されていて、サーバーの切断中にユーザーとパーティションセットのマッピングが変更された場合、パーティションキャッシュに古いユーザーとパーティションセットのマッピングが含まれている可能性があります。 これにより、ユーザーとパーティションセットのマッピングがコンポーネントのアクティブ化に使用されるメカニズムである場合、アクティブ化エラーが発生する可能性があります。
COM+イベントは、パーティションに完全に統合されています。 つまり、サブスクライバーは、アプリケーションがパーティション内に存在するパブリッシャーをサブスクライブできます。 このサブスクリプションを許可するために、サブスクライバークラスのコレクションには、イベントクラスのパーティションIDとイベントクラスのアプリケーションIDという2つのパーティション関連のプロパティが含まれています。
関連トピック