Is there any harm in disabling the idle timeout for an application pool?
Solution 1:
I highly recommend turning off the idle timeout in most situations. It's the default but it's meant more for bulk hosters that want unused worker processes to be ended so that they can always assume that they won't have all of them running at the same time.
However, if you have just a few production app pools on a server but occasionally don't have a visitor in a 20 minute space (i.e. overnight), you don't want your app pool to stop. You likely have enough resources to have all of your app pools running at once.
Additionally the default settings of recycling the app pool at 1740 minutes should also be changed. I recommend scheduling it for an off-peak time like 4:00am daily rather than having it at different times each day. More on that here on my website.
Solution 2:
This setting is best left enabled for:
- leaky applications
- servers with lots of application pools
There isn't much danger of being overwhelmed with app pools if you've only got a few defined.
Other than that, I've disabled it in many cases, with no ill effect.
Solution 3:
My understanding is that if you don't kill idle worker processes after a period of time, you will have tons of unused worker processes eating up memory.
I guess you can try it and see if you notice a gradual increase in memory. There is another setting that does a recycle every 1700 minutes or something, so that would clear out really old worker processes.
BTW The way we handle this with lesser-used websites is that our monitoring software loads an aspx page every 10 minutes.