I have an ASP.NET MVC application deployed on IIS 8.5 in a Web server and I would like to know the differences between these two features for the setting "Idle Time-out action".
If process is suspended, are the memory and resources used by the process removed and freed? I think it is good to remove and free memory used to avoid memory leaks so I usually use Terminate feature.
I think you should choose Suspend
or Terminate
according to your application environment.
Normally, to configure Idle Worker Process Page-Out for a Single Application Pool, we choose Terminate
, to configure Idle Worker Process Page-Out as a Default for Application Pools, we choose Suspend
.
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.
In Idle Time-out action
, it provides an option of suspending an idle worker process rather 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.