Introducing IIS application pool ‘Idle Timeout Action’

In this post, we will discuss about the new setting ‘Idle Timeout Action’ introduced with IIS 8.5 web server. Before I start discussing usage of ‘Idle Timeout Action’. I would like to tell what the Idle Timeout is.

IIS provides the administrator with an option of timing out a worker process that is idle for a specified period of time. This is a good option for sites that are not accessed very often because it frees up system resources when the site is idle. The disadvantage is that the next time the site is accessed, the user will need to wait for the worker process to start again.

With IIS 8.5, it provides an option of suspending an idle worker process than terminating it. A suspended worker process remains alive but is paged-out to disk, reducing the system resources it consumes. When a user accesses the site again, the worker process wakes up from suspension and is quickly available. When an idle worker process is terminated, the worker process is shut down and the startup period will be longer when the site is subsequently accessed. The default behavior is to terminate the idle worker process, and the same behavior is used in the previous versions of IIS.

This setting can be changed at the application pool level. But how to check which application pool is being used by the website.

Follow these steps to check application pool name:

1. Open IIS manager.

2. Select website from Connections pane.

3. Click ‘Basic Settings’ from the Actions pane.

4. Check the name of application pool from ‘Edit site’ dialog box.

After checking the application pool name, follow below mentioned steps to change the value of ‘Idle Timeout Action’ property:

1. Navigate to Connections pane > Application Pools.

2. Select <Application Pool Name> and then click Advanced settings from the Actions pane.

3. In Advanced settings dialog box, under Process model, change the value of Idle Time-out Action property to Suspend.

4. Click OK.