We have a webapp (ASP.NET MVC 4) running on IIS 7.0. Recently, it's started crashing, logging OutOfMemoryException as the cause. We also get a load of "unhealthy worker process" notifications, as well as "failed to initialise" and "failed to create AppDomain". In testing, we've noticed that IIS spawns between three and six worker processes for every request, even simple GET requests for relatively lightweight pages. This obviously results in a jump in memory usage - often between 100 and 200MB. Unsurprisingly, it's not long before it runs out of memory, slowing to a halt and eventually crashing.

This server has been running this app for some time, and while there have been some changes to it lately, they're mostly small bugfixes or cosmetic tweaks, and this issue persisted when I replaced it with an older backup.

What could be causing this, and how do I resolve it?


Sounds like webgardens (one app pool spawning additional processes). I'd suggest trying to not use web gardens if they are being used. Additionally, if you use SCOM 2012 sp1, I'd suggest deploying APM (application performance monitor) and push a management pack to monitor what's going on. APM doesn't require any code changes and can get down to the function level. The only other option is to use IIS Debug Diag to http://support.microsoft.com/kb/919790


You'll need to throw a debugger on it to see where exactly the problem is. Chances are it's code related (if your app is homegrown).

  • That's what we thought, but for some reason, rebuilding the application pool and restarting the app seems to have fixed it. No code changes, no settings changes (the new app pool is set the same as the old one) but it's not doing it now. – anaximander May 8 '13 at 7:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.