Tools for Optimizing Performance
Microsoft offers a numbers of tools for performance tuning and testing. Some of these tools are included with Microsoft Windows Server 2003, Windows Server 2008, and Internet Information Services (IIS), others are on the Windows Server 2003 Resource Kit companion CD, and others are available on the Microsoft.com Web site. For example, the System Monitor (formerly known as Performance Monitor) is built into Windows Server and is necessary to monitor almost every aspect of server performance.
The following section lists brief descriptions of performance optimizing tools and how to access them.
Microsoft Web Application Stress Tool. A simulation tool developed by Web testers to realistically reproduce multiple browsers requesting pages from a Web application. Microsoft has made the tool easy to use, masking some of the complexities of Web server testing. This makes the tool useful for anyone interested in gathering performance data on a Web site. The tool is a consolidation of many of the best features developed over the years, in addition to several new features. This version covers the most needed features for stress testing multi-layered, personalized Active Server Pages (ASP) Web sites that are running on Microsoft Windows 2000.
To download WAS, go to http://go.microsoft.com/fwlink/?LinkId=76677.
Microsoft Visual Studio 2008 Team Test Load Agent. A tool provided in Visual Studio Team Edition for testers that provides development teams with a way to see how an application acts under various sorts of user load. The Load Agent generates supplemental test load for use with Visual Studio 2008 Team Edition for Software Testers that enables organizations to simulate more users and more accurately test the performance of Web applications and servers. You can use the Load Agent to evaluate how an application performs under a variety of different conditions that make tasks like stress testing and capacity planning much easier. The Load Agent, which includes both agent and controller software, is highly extensible and customizable. This gives testers a large amount of flexibility. It provides the infrastructure for distributed load testing for scale-out generation of massive loads, in addition to distributed functional and unit test execution.
SQL Profiler. A tool that captures SQL Server events from a server. The events are saved in a trace file that you can analyze later or use to replay a specific series of steps when you try to diagnose a problem. You can use SQL Profiler to:
Step through problem queries to find the cause of the problem.
Find and diagnose slow-running queries.
Capture the series of SQL statements that lead to a problem. You can then use the saved trace to replicate the problem on a test server where it can be diagnosed.
Monitor the performance of SQL Server to tune workloads.
Performance Monitor. A tool you can use to collect and view extensive data about the way in which hardware resources are used and the activity of system services. You can use System Monitor to:
Collect and view real-time performance data on a local computer or from several remote computers.
View data in a counter log that is either being collected currently or was collected previously.
Present data in a printable graph, histogram, or report view.
Incorporate System Monitor functionality into Microsoft Word or other applications in the Microsoft Office suite through automation.
Create HTML pages from performance views.
Create reusable monitoring configurations that can be installed on other computers using Microsoft Management Console (MMC).