次の方法で共有


ジェネレータ クォンタム期間の指定

Notification Services では、ジェネレータは連続実行されません。代わりに、時間を個々の間隔に分割する独自のクロックをジェネレータが保持します。これらの各時間間隔は、クォンタムと呼ばれます。各クォンタムの終わりに、ジェネレータはルールを実行します。このルールによって、到着したイベントと、このクォンタム中に期限を迎えた定期的なサブスクリプションが処理されます。Notification Services アプリケーションを定義するときに、ジェネレータのジェネレータ クォンタムを定義します。

たとえば、5 分間のジェネレータ クォンタムを構成するとします。ジェネレータは 5 分間隔ごとにイベント ルールとサブスクリプション ルールを実行し、その間隔中に到着したすべてのイベントと、その間隔中に処理される必要があるすべての定期的なサブスクリプションを処理します。

ms171315.note(ja-jp,SQL.90).gifメモ :
ジェネレータ クォンタムは、ディストリビュータ クォンタムとは関係ありません。ディストリビュータ クォンタムの詳細については、「ディストリビュータ設定の指定」を参照してください。

クォンタム期間

Notification Services では、各クォンタムに 1 回ずつ、次の作業を順番に実行します。

  1. イベント記録のルールを実行します。
  2. サブスクリプションのイベント ルールを実行します。
  3. 定期的なサブスクリプション ルールを実行します。

ジェネレータ クォンタムを構成することによって、Notification Services がこの一連のルールを実行する頻度を制御します。たとえば、ジェネレータ クォンタムを 5 分間に設定すると、Notification Services は 5 分ごとに 1 回、この一連のルールを実行します。

ms171315.note(ja-jp,SQL.90).gifメモ :
ProcessEventsInOrder 設定は、Notification Services がイベントとサブスクリプションを処理し、通知を生成する頻度にも影響します。詳細については、「イベント処理順序の指定」を参照してください。

クォンタム期間の選択

ジェネレータ クォンタムを構成するときに、15 秒などの短い時間、または 15 分などの長い時間を選択できます。ただし、アプリケーション応答性とリソース消費との間でバランスが取られます。

  • 非常に短時間のジェネレータ クォンタムを構成すると、アプリケーションで消費するシステム リソースの量が多くなります。ただし、サブスクライバはイベントの実際の到着に近い時期にイベント ドリブン通知を受信する可能性があり、また定期的なサブスクリプションは実際のサブスクリプション スケジュールにより近い時期に処理されます。
  • 長時間のジェネレータ クォンタムを構成すると、アプリケーションで消費するシステム リソースの量は少なくなります。ただし、イベントの到着時または定期的なサブスクリプションの期限と、通知が生成される時間の間の遅延時間が長くなる可能性があります。

アプリケーションがすべてのルールを実行するために必要な時間よりも長いクォンタム時間を要求すると、アプリケーションが遅延する可能性があります。記録ルールとサブスクリプション ルールの制限によって、アプリケーションがルールの実行をスキップするまでに遅延できる時間を制御します。詳細については、「クォンタム制限の指定」を参照してください。

既定のジェネレータ クォンタムは、1 分です。

ジェネレータ クォンタムを指定するには

XML でアプリケーションを定義している場合は、アプリケーション定義ファイル (ADF) でジェネレータ クォンタムを定義します。プログラムでアプリケーションを定義している場合は、Notification Services 管理オブジェクト (NMO) を使用して、ジェネレータ クォンタムを定義します。

参照

関連項目

Microsoft.SqlServer.Management.Nmo.Application.QuantumDuration

概念

アプリケーションの実行設定の指定
イベント処理順序の指定
クォンタム制限の指定

その他の技術情報

ApplicationExecutionSettings の QuantumDuration 要素 (ADF)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手