Best practices for memory limits in an IIS app pool


I wanted to know what people used as a best practice for limiting memory on IIS [5/6/7]. I'm running on 32bit web servers with 4GB of physical memory, and no /3GB switch. I'm currently limiting my app pools to 1GB used memory. Is this too low? any thoughts?

Best Solution

All the limits in the application pool are for bad behaving apps. And more specifically:

  1. To prevent the bad app from disturbing to good apps.
  2. To try and keep the bad app running as much as possible.

In that light, the answer is of course: It depends.

If your application is leaking then without a limit it will crash around 1.2 - 1.6 Gb (if memory serves). So 1 Gb is sensible. If during normal operation your application consumes not more than 100 Mb and you have many app pools on the server, than you should set the limit lower to prevent one app from damaging other apps.

To conclude: 1 Gb is sensible. Hitting the limits should be treated as an application crash and should be debugged and fixed.

David Wang blog is a good resource on those issues.

Related Question