tech post: IIS and slow initial site performance
While sites are in development, they often only have a few users and can go many, many minutes without being accessed. When being used this way, you will notice that some sites take a inordinately long time to come up when using IIS 7
The reason for this is that the app server for those sites is timing out. Going into advanced settings for the application pool and setting IdleTimeout to 0 will solve this problem nicely.
The downside? You’re using some RAM to run the app server. My theory is that it’s actually caching the CLR translated to native bytecode. But for most sites, this is not a meaningful amount of RAM compared to what a modern server has available – maybe 100 megabytes. And the performance improvement is well worth it.