The Windows operating system does a decent job of juggling multiple applications that are running simultaneously. Windows is designed so that system resources such as memory and CPU time are shared among the processes that are executing, so that each receives a fair amount of system resources.
But every once in a while, a poorly written application consumes far more than its fair share of system resources, thereby starving other applications of the resources they need.
A free tool from Microsoft, the Windows System Resource Manager (WSRM), is designed to keep resource-hungry applications in check.
Prior to the release of WSRM, if a poorly written application starved other applications of system resources, there was little you could do about it. Because an application that consumes an excessive amount of system resources can affect the stability and performance of other applications running on the server, Microsoft created the WSRM as a tool for regulating system resource utilization.
WSRM allows you to set limits to the amount of system resources that an application or an IIS application pool is allowed to consume. Resources are usually allocated to an application as a percentage of all of the resources that the system has available. For example, you could use WSRM to ensure that a particular application never consumes more than 20% of the server's processing power. WSRM is also an effective tool for dealing with applications containing memory leaks.
WSRM will be a standard feature in Longhorn Server. A version is available for Windows Server 2003, but you have to download it. This version of WSRM will only work with Windows Server 2003 Enterprise Edition or Datacenter Edition. The 32-bit, IA64 and x64 versions of Windows are supported, but your server must be running Service Pack 1 or higher for Windows Server 2003.
The WSRM download consists of an .ISO file, which is a CD image file. You'll have to use an application such as the Easy Media Creator 9 Suite from the Roxio division of Sonic Solutions to burn the image onto a CD.
Once you've created the installation CD, insert it into the server you want to install WSRM on. Next you'll see a splash screen that lets you choose which version of the software you want to install.
If this screen does not appear, launch the installation process manually by opening Windows Explorer and navigating to the CD's SETUP folder. This folder contains subfolders with names corresponding to the various versions of Windows. Choose the folder that matches your version of Windows Server 2003, and run the SETUP.EXE file found in that folder.
Upon running the SETUP.EXE file, Windows will launch the WSRM Setup Wizard. Click Next to bypass the wizard's welcome screen, and you'll be presented with the End User License Agreement (EULA). Choose the option to accept the EULA, and click the Next button to continue.
Now you'll be prompted to specify the installation type. By default, both the server and client components are installed on the local hard drive, which is exactly what you want. Click Next to accept the defaults, and you'll see a screen asking if you want to enable accounting. Accounting tracks CPU resource usage. You can even export the accounting information to various file formats, such as a CSV file that can be imported into Excel.
The downside to enabling accounting is that it consumes extra system resources. If your system is low on CPU or disk resources, or if you don't think you'll ever use the accounting information, you're better off not enabling accounting. But for the purpose of this article, I'll assume you have accounting enabled.
Click the Next button and Windows will begin installing the necessary files. How long the installation takes to complete will depend on the speed of your server, but, in most cases, it should be less than a minute. When the setup process is completed, click the Finish button and Setup will open the Windows System Resource kit manager console.
Now you know how to install WSRM. In upcoming articles I'll show you to use WSRM to define an application and how you can place system resource limitations on the applications you have defined.
About the author: Brien M. Posey, MCSE, is a Microsoft Most Valuable Professional for his work with Windows 2000 Server, Exchange Server and IIS. He has served as CIO for a nationwide chain of hospitals and was once in charge of IT security for Fort Knox. He writes regularly for SearchWinComputing.com and other TechTarget sites.
More information on this topic:
- Tip: Improve server performance by making better use of RAM
- Topics: How Windows Server 2003
- RSS: Sign up for our RSS feed to receive expert advice every day.