Various ITAS processes rely on IIS application pools, they have certain default settings which can impact their performance. These default settings were set when IIS 6 was being developed, which is the version that introduced application pools.
The default settings in question are:
Idle Time-out (minutes) - the default for this setting is '20', meaning if the application pool is not used for 20 minutes it will go idle and recycle itself, which when called into action again will need to warm up, taking up to 10 seconds to do so. We recommend setting this to '0', inline with the amended setting below.
Default app pool recycle - the default for this setting is 1740 minutes (exactly 29 hours). The reason for this is that its the smallest prime number over 24, to achieve a staggered and non repeating pattern that doesn't occur more frequently than once per day. This time frame is great for situations when you don't know your environment, however since you are likely to know your environment, its best to change this, we recommend setting to a fixed time each day during low traffic times, using the 'Specific Times' setting . If you are running multiple application pools it may be wise to stagger them so you don't overload the server with a lot of simultaneous recycles. The impact of leaving it set to the default is the application pool will recycle at various times, and as highlighted above, after a recycle the first call can take up to 10 seconds to warm up.
Depending on which IIS you have on your server will vary the results.
For IIS 7 - using the settings above, will result in just the first call of the day to the application pool after the set recycle needing to allow time for warm up, subsequent calls throughout the day though will never need to warm the application pool up.
For IIS 8 - using the settings above, and also amending the following settings (new to IIS 8), Start Mode to 'AlwaysRunning', and the site setting Preload Enabled to 'True', will result in the application pool warming itself up after the set recycle, eliminating the warm up time of the first call of the day which IIS 7 still suffers from.
See below screen shots of all settings highlighted above:
In the Application Pool Advanced Settings,
In the Application Pool Advanced Settings
In the Sites Advanced Settings