It’s a little known secret that IIS v6.0 or v7.x doesn’t do well when handling applications that lead to runaway CPU usage. In both versions, the application pool serving the application only provides limited CPU management capabilities. The limited capabilities are limited by the fact that only one of 2 actions can take place when CPU thresholds are exceeded -
- Do Nothing
- Kill the process
This restrictive behavior really leads many Administrators to make the critical decision to isolate applications on a per server basis. This isn’t nearly as “expensive” these days with virtualization front & center but nonetheless each Web server managed often is one too many. In comes Windows System Resource Manager (WSRM) which provides robust capabilities to allow Web applications to live on the same single server together without damaging each other in the process.
WSRM & IIS: Made for each other in Scalable, Hostable Environments
A few years back I had the pleasure of doing a presentation that is often is overlooked when it comes to all the topics out there to learn about. IIS 6.0 was the focus as it was the server-based platform that many of you were considering but it is still very valid today with Windows Server 2008/R2 & IIS 7.x. Although the the user interface might slightly differ in these updated releases, the princples are the same.
CPU Management in IIS 7.0:
To learn more about WSRM & IIS 6.0, I’m sharing with you a presentation I did a few years back with Chris Stackhouse from the WSRM team where we demonstrate how to effectively setup WSRM for IIS 6.0 management.
As you continue to make these critical decisions for your Web applications, it is imperative that you understand what features are available that could make your life much “easier.” The following resources exist on WSRM & IIS and should help you as you start to look at ways to take advantage of this functionality -