Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies To: Windows Server 2003, Windows Server 2003 with SP1
The WWW service can recycle a worker process in one of two ways, both of which do not interrupt service:
By default, the WWW service establishes an overlapped recycle, in which the worker process that is to be shut down is kept running until after a new worker process is started.
If the applications in an application pool cannot tolerate multi-instancing, you can optionally configure the WWW service to shut down a worker process and then start a new worker process. Use this type of recycling only if the applications in the application pool cannot tolerate multi-instancing. To turn off overlapped recycling, set the DisallowOverlappingRotation metabase property to true.
When a worker process requests a recycle, the WWW service initiates an overlapped recycle, creating a new worker process to replace the old one. While the new worker process is starting, the old process continues to serve requests. After the new process starts and initializes successfully, the WWW service instructs the old worker process to shut down. At this point, the old worker process stops accepting new requests from HTTP.sys and begins to shut down. The WWW service allows the old worker process a configured time period in which to finish processing its requests before the worker process is shut down. The WWW service terminates the worker process if it fails to shut down within the configured time.
With overlapped recycling, the old worker process remains in communication with HTTP.sys to handle requests until the new worker process is running. HTTP.sys establishes and maintains TCP/IP connections. When the WWW service recycles a worker process, it does not disconnect the existing TCP/IP connection. However, because the shutdown timeout value of a shutdown or startup is configurable, the worker process can be terminated while it is still serving requests if it does not finish servicing existing requests within the time limit.
If the application pool is a Web garden, which uses a set of equivalent worker processes, and you configure worker process recycling based on elapsed time, all the worker processes are recycled during the elapsed time set, but they are not recycled all at once. Worker process recycling in a Web garden is spread over the time set to reduce interruptions of service to client requests and to reduce the impact of restarting all processes at the same time.
Similarly, when you configure a Web garden to recycle applications based on the number of requests processed, recycling takes place at intervals in order to spread out the overhead that is associated with the worker process recycling.
For more information about Web gardens and how to configure them, see Configuring Web Gardens in IIS 6.0. For more information about how you can recycle a Web garden based on length of time, including examples of Web garden recycling, see Deploying ASP.NET Applications in IIS 6.0.