Migrating Health-Related Attributes

Applies To: Windows Server 2003, Windows Server 2003 with SP1

By detecting the degree of stability (or health) of an ASP.NET application, IIS determines whether corrective action is required. In IIS 5.0, ASP.NET detects an unhealthy worker process. In IIS 6.0, the WWW service detects an unhealthy worker process that has terminated abnormally if all of the available IIS threads in the worker process assigned to the application pool are blocked.

The Machine.config attributes that affect health-related metabase properties include:

  • shutdownTimeout

  • pingFrequency and pingTimeout

Migrating the shutdownTimeout Attribute

The shutdownTimeout Machine.config attribute, default value five seconds, specifies the maximum number of seconds allotted for a worker process to shut down before ASP.NET automatically shuts it down. The attribute is a string value in the format of hr:min:sec. To configure this value in IIS 6.0, you need to convert this format to time in seconds.

Configure the Worker process must shutdown setting in IIS 6.0 to the same time value, in minutes, that is configured in the shutdownTimeout Machine.config attribute.

For more information about how to configure the Worker process must shutdown setting, see Configure Application Pool Health.

Migrating the pingFrequency and pingTimeout Attributes

In IIS 5.0, the combination of the pingFrequency and pingTimeout Machine.config attributes specifies whether ASP.NET should monitor the health of worker processes. If IIS 6.0 is running in worker process isolation mode, the WWW service periodically monitors the health of a worker process.

The pingFrequency Machine.config attribute, default value 30 seconds, specifies the interval at which ASP.NET queries the worker processes to determine if each worker process is still operating correctly. The pingFrequency Machine.config attribute is a string value in the format of hr:min:sec. To configure this value in IIS 6.0, you need to convert this format to time in seconds.

The pingTimeout Machine.config attribute, default value five seconds, specifies the interval after which ASP.NET restarts a worker process if there was no response to the most recent query. If a worker process does not respond to the “ping” within the value set by the pingTimeout Machine.config attribute, the worker process is restarted. The pingTimeout Machine.config attribute is a string value in the format of hr:min:sec. To configure this value in IIS 6.0, you need to convert this format to time in seconds.

You can configure the equivalent settings in IIS 6.0 by making changes to the equivalent IIS metabase properties, listed in the following table.

Equivalent IIS 6.0 Metabase Properties for pingFrequency and pingTimeout

Machine.config Attribute Equivalent IIS Metabase Property

pingFrequency

PingInterval

pingTimeout

PingResponseTime

Note

Unless required by your ASP.NET applications, use the default settings in IIS 6.0. In IIS 6.0, the default setting for PingInterval is 30 seconds and the default setting for PingResponseTime is 90 seconds.

You can configure the PingInterval metabase property through the Ping worker process setting for application pools in IIS 6.0 Manager. For more information about how to configure the Ping worker process setting, see Configure Application Pool Health.

You can only configure PingResponseTime by directly modifying the metabase or programmatically through Windows Management Instrumentation (WMI) or Active Directory® Service Interfaces (ADSI). For more information about directly modifying the metabase, see Modify the IIS Metabase Directly.