Healthy IIS application pool settings

Source: Internet
Author: User
Tags time interval

By recycling application pool settings, you can control how system resources are recovered. The following sections describe how to specify a recycle application pool setting.


Specify Recycle application pool settings

The Recycle application pool settings are specified in the Recycle tab of the application pool's Properties dialog box.

Set up recycle application pool settings
Open the IIS Management console, and click the plus sign to expand the local computer.  Click the plus sign to expand the Application Pools folder. Right-click the appropriate application pool, and then select Properties.  The Properties dialog box for the application pool appears.  Click the Recycle tab, and then set the appropriate application pool settings. The Recycle tab of the Application Pool Properties dialog box
The Recycle tab of the Application Pool Properties dialog box


Memory Recycle

"Memory Recycle" is the application pool setting that is equivalent to the memorylimit asp.net process model setting. It specifies the maximum amount of memory that the worker process can use. If the worker process exceeds this number, a new process is created to replace it, and all current requests are reassigned to the new process. There are two important differences between the memorylimit asp.net process model setting and the "Memory Recycle" application pool settings:
The memorylimit asp.net process model setting uses only physical memory. The memory recycle application pool setting allows you to specify limits for both physical and virtual memory. Because of the way the common language runtime's garbage collector works, physical memory (or a combination of physical and virtual memory) is often used for asp.net applications.  Virtual memory is often used for traditional native applications that divide the heap into fragments. The "Memory Recycle" application pool setting is specified in megabytes (MB), rather than as a percentage of total memory.

Recycle worker Process

The recycle worker process is the application pool setting that is equivalent to the requestlimit asp.net process model setting. It specifies the number of requests that cause a worker process or application pool to be reclaimed. The Recycle worker process is disabled by default. To enable the Recycle worker process, select the check box and specify the number of requests in the spin box.


Recycle multiple worker processes

"Recycle multiple worker Processes" is an application pool setting that is equivalent to the timeout asp.net process model setting. It specifies the time interval for reclaiming worker processes or application pools. By default, the recycle multiple worker processes is enabled and is set to 120 minutes. You can specify a different time interval by changing the value in the spin box. To disable "Recycle multiple worker Processes", clear the check box.

Performance Application pool Settings
The performance application pool settings allow you to control the operation of the worker process. The following sections describe how to specify performance application pool settings.

Specifying Performance application pool settings
The performance application pool settings are specified in the Performance tab of the application pool's Properties dialog box.

Setting Performance application pool settings
Open the IIS Management console, and click the plus sign to expand the local computer.  Click the plus sign to expand the Application Pools folder. Right-click the appropriate application pool, and then select Properties.  The Properties dialog box for the application pool appears. Click the Performance tab, and then set the appropriate application pool settings.
The Performance tab of the Application Pool Properties dialog box



Network Garden

The Web garden is the application pool setting that is equivalent to the webgarden and cpumask asp.net process model settings. To enable the network garden, set the maximum number of worker processes to a value greater than 1. The value also determines the maximum number of processes for the application pool.

Because the Web garden supports the use of multiple processes, each process has its own copy in application state, in-process session state, cache, and static data. The Web garden does not apply to all applications, especially if these applications require maintenance status. Be sure to check the performance of your application before deciding whether or not the network garden mode is applicable.

When using a Web garden, it is important to understand the way the session state and the looping work are done. It is also important to consider how other application pool settings affect your application.


Session state in a network garden using worker process isolation mode

When using session state, be aware that worker process isolation mode does not support the process of sending a request back to the resulting request return. When an application runs in a Web garden that is in an ASP session state or application state, the application needs to send its request back to the initiating process. When using the IIS 6.0 application pool, make sure that the application keeps a connection open so that its request is sent back to the appropriate process. If this connection is not kept open, the request is sent to the next available worker process that serves the network garden.


Loops in a network garden using worker process isolation mode

Loops are a load-balancing method for applications. When each request arrives, it is automatically sent to the next available process. For example, if the Web garden has 4 processes, the request is sent to processes 0, 1, 2, and 3, and is sent in this order. The loop is then repeated for other requests.


Application pool parameters in a network garden using worker process isolation mode
application pool settings Behavior
AppPoolQueueLength The value of this parameter is not affected. However, the request is distributed by looping through all the worker processes that serve the Web garden.
DisallowOverlappingRotation There are no behavioral changes in the Web garden.
DisallowRotationOnConfigChange There are no behavioral changes in the Web garden.
IdleTimeout Compute independently for each process, so that each process timeout can be independent of each other. Depending on the routing algorithm selected, the number of processes to load is automatically configured.
LoadBalancerCapabilities There are no behavioral changes in the Web garden.
Orphanaction There are no behavioral changes in the Web garden.
Orphanworkerprocess There are no behavioral changes in the Web garden.
PeriodicRestartTime The meaning of this parameter has changed in the Web garden. In the Web garden, this parameter specifies the time interval for all processes to be reclaimed. Processes are recycled at an average time interval for a specified length of time. For example, if the Web garden has four processes and the PeriodicRestartTime is set to 20 hours, the first process is reclaimed after 5 hours, the second process is recycled after 10 hours, and so on. Note If the process crashes, provide the periodicrestarttime run-time value to the alternate process. This allows the crashed process to be recycled with other processes within the specified periodicrestarttime .
PeriodicRestartRequests The meaning of this parameter has changed in the Web garden. In a Web garden, this parameter specifies that all processes are reclaimed after a number of requests have been reached. Processes are recycled at average time intervals within the specified number of requests. For example, if the Web garden has four processes and the periodicrestartrequests is set to 40,000 requests, the first reclaims a process after 10,000 requests, reclaims the second process after 20,000 requests, and so on. After the first set of processes is reclaimed, the next set of processes is assigned the periodicrestartrequests value of 40,000.
PeriodicRestartSchedule There are no behavioral changes in the Web garden. If the administrator decides to use a timesheet based recycle, all the network garden processes are recycled at the same time.
PingInterval There are no behavioral changes in the Web garden.
PingResponseTime There are no behavioral changes in the Web garden.
PingingEnabled There are no behavioral changes in the Web garden.
RapidFailProtection There are no behavioral changes in the Web garden. For example, calculate the total number of failures for the entire network garden over a period of time and compare them. This provides additional resilience.
Rapidfailprotectioninterval There are no behavioral changes in the Web garden. For example, calculate the total number of failures for the entire network garden over a period of time and compare them. This provides additional resilience.
Rapidfailprotectionmaxcrashes There are no behavioral changes in the Web garden. For example, calculate the total number of failures for the entire network garden over a period of time and compare them. This provides additional resilience.
SMPAffinitized There are no behavioral changes in the Web garden.
SMPProcessorAffinityMask In IIS 5.0 isolation mode, you can only have as many worker processes as the number of CPUs. In worker process isolation mode, multiple CPUs can be used in a single worker process.
ShutdownTimeLimit There are no behavioral changes in the Web garden.
StartupTimeLimit There are no behavioral changes in the Web garden.


Some application pool settings have behavior that is specific to the network garden. The following table summarizes these behaviors

Idle Timeout

Idle timeout is an application pool setting that is equivalent to the idletimeout asp.net process model setting. It specifies how long the worker process or application pool will shut down after it has started to be inactive. The default "Idle timeout" is enabled and is set to 20 minutes. You can specify a different time limit by changing the value in the spin box. To disable idle timeout, clear the check box.


Request Queue Restrictions

The request queue limit is the application pool setting that is equivalent to the restartqueuelimit asp.net process model setting. It specifies the maximum number of requests queued in the ASP.net ISAPI after the exception terminates, waiting for the worker process to start. The request queue limit is enabled by default and is set to 1000 requests. You can specify different restrictions on the number of queued requests by changing the values in the spin box. To disable request queue throttling, clear the check box.


Sound application pool Settings

By using sound application pool settings, you can control how worker processes are monitored for proper functionality. The following sections describe how to specify a sound application pool setting.


Specify sound application pool settings

These recycle application pool settings are specified in the Health tab of the application pool's Properties dialog box.

Setting up sound application pool settings
Open the IIS Management console, and click the plus sign to expand the local computer.  Click the plus sign to expand the Application Pools folder. Right-click the appropriate application pool, and then select Properties.  The Properties dialog box for the application pool appears.  Click the Sound tab, and then set the appropriate application pool settings. The Health tab of the Application Pool Properties dialog box
The Health tab of the Application Pool Properties dialog box



Enable Ping

"Enable Ping" is an application pool setting that is equivalent to the pingfrequency asp.net process model setting. It specifies the interval at which the ASP.net ISAPI checks whether the worker process exists. If there is no worker process, restart the worker process. By default, "Enable Ping" is enabled and set to 30 seconds. You can specify a different time interval by changing the value in the spin box. To disable ping, clear the Enable ping check box.


Shutdown time limit

The shutdown time limit is the application pool setting that is equivalent to the shutdowntimeout asp.net process model setting. It specifies the length of time that is provided to the worker process for normal shutdown. If the worker process is not closed for a specified length of time, the ASP.net ISAPI ends the worker process. The shutdown time limit is set to 90 seconds by default. You can specify a different time limit by changing the value in the spin box.


Identify application pool settings

By identifying application pool settings, you can specify the accounts that the worker process uses. By default, the worker process uses the network Services (Network Service) account. However, you can override this account and specify a different Windows identity. The following sections describe how to specify identity application pool settings.


Specify Identity application pool settings

These recycle application pool settings are specified in the Identity tab of the application pool's Properties dialog box.

Setting Identity application pool settings
Open the IIS Management console, and click the plus sign to expand the local computer.  Click the plus sign to expand the Application Pools folder. Right-click the appropriate application pool, and then select Properties.  The Properties dialog box for the application pool appears.  Click the Identification tab, and then set the appropriate application pool settings. The Identity tab of the application Pool Properties dialog box
The Identity tab of the application Pool Properties dialog box



User name and password

User name and password are the application pool settings that are equivalent to the username and password asp.net process model settings respectively. These two settings are used in combination to enable the worker process to run with the specified Windows identity. By default, the worker process uses the network Services (Network Service) account. However, if the Configurable radio button is selected and the user name and password text boxes contain valid values, the worker process uses the specified Windows identity. In addition, you must add the Windows identity to the IIS_WPG user group.


To add a Windows identity to the IIS_WPG user group
On the Start menu, right-click My Computer, and then click Manage.   Expand the Local Users and Groups node by right-clicking the plus sign.   Click the Groups folder. A list of all groups defined on this computer is listed in the right pane.   Right-click "IIS_WPG" and click "Add to Group".   Click the Add button and enter the account you want to use for the worker process  

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.