If you’re running a Windows .NET web app, like DotNetNuke, it must be compiled by IIS before serving it up. When a page request comes in, IIS checks to see if the compiled bytecode is loaded in the iis application pool. If so, it uses it and if not, it loads all files and compiles them, puts them into the iis application pool, then serves the page.
We refer to this “wait while I compile the site before serving up the page” page load as the “cold start” page load. This can add 1-10 seconds of page response time, depending on how complex the .NET app is, the amount of disk i/o required, and how busy the web server is (i.e. available CPU) at the time of compile.
This article is meant to provide a tip to website performance enthusiasts for keeping their sites warm and reducing the likelihood of site visitors waiting for the “cold start” page load.