I had my 'Timeout limit' set to 5 minutes on the app pool for my site.
I noticed that it was frequently stopping and restarting. Shortly after the app pool restarts the w3svc.exe
starts with strange behaviour where the CPU shoots up and down from between 0 and 100%.
Before the CPU begins shooting up and down the app is accessible from the browser, so its as if the app is already 'running' so I perceive it as started... If that means any thing.
I was panicking initially when I saw it as I feared it might be the code in my C# ASP.NET MVC app, but then I realised that this calms down after about 5 minutes of shooting up and down and the memory and CPU usage returns back to an acceptable state.
I've set my timeout on the app pool to 0 to prevent it from frequently entering this cycle, but I'm not exactly sure what its doing so I'd like to fine tune it.
I've been looking up things to do with caching as I fear that the server might be caching my entire /Content
folder which contains several thousands of images.