Specifying Throttles for Events, Subscriptions, and Notifications

Notification Services processes events and subscriptions to generate notifications. If an application error or a malicious user with excessive privileges inserts large numbers of spurious events or subscriptions, the result can be a denial of service while Notification Services tries to catch up. To limit the number of events and subscriptions that can be processed at one time, and the number of notifications that can be generated at one time, Notification Services provides event, scheduled subscription, and notification throttles for your application.

The default throttle values might be too low for your application. You should adjust the event, scheduled subscription, and notification throttle values to match your expected data loads and to allow for expansion and peak processing periods.

Event Throttle

The event throttle specifies the maximum number of events per event class that can be processed by the generator within a quantum period.

If the number of events of a single event class submitted in a quantum exceeds the event throttle value, Notification Services stops all processing for the quantum and writes an error to the Windows application log.

The default event throttle value is 1000. To turn off the event throttle, use the value 0.

Specifying an Event Throttle Value

If you are defining an application through XML, specify the event throttle in the application definition file (ADF). If you are defining an application programmatically, use Notification Services Management Objects (NMO) to specify the event throttle.

Scheduled Subscription Throttle

The scheduled subscription throttle specifies the maximum number of scheduled subscriptions from a single subscription class that can be processed by a single rule firing. If your application uses quantum sequencing, this is also the maximum number of scheduled subscriptions per subscription class per quantum. For more information, see Specifying the Event Processing Order.

If the number of scheduled subscriptions to be processed exceeds the subscription throttle value, Notification Services stops all processing for the quantum and writes an error to the Windows application log.

The default subscription throttle value is 1000.

To turn off the subscription throttle, use the value 0.

Specifying a Subscription Throttle Value

If you are defining an application through XML, specify the subscription throttle in the application definition file (ADF). If you are defining an application programmatically, use NMO to specify the subscription throttle.

Notification Throttle

The notification throttle specifies the maximum number of notifications that can be generated for a single notification class by a single rule firing. If your application uses quantum sequencing, this is also the maximum number of notifications per notification class per quantum. For more information, see Specifying the Event Processing Order.

If the number of notifications generated exceeds the notification throttle value, Notification Services abandons the subscription rule that generated the notifications. Other rule firings and quantum processing continue.

The default notification throttle value is 1000.

To turn off the notification throttle, use the value 0.

Specifying an Notification Throttle Value

If you are defining an application through XML, specify the notification throttle in the application definition file (ADF). If you are defining an application programmatically, use NMO to specify the notification throttle.

See Also

Tasks

Using Event Messages

Concepts

Specifying the Generator Quantum Duration
Specifying the Event Processing Order
Specifying Application Execution Settings
Defining Subscription Rules

Help and Information

Getting SQL Server 2005 Assistance