Introduction

This book was written by members of the Microsoft Application Consulting and Engineering (ACE) Team, which provides performance analysis services for some of the most heavily utilized Web applications and sites at Microsoft. Our responsibilities include, but are not limited to, providing throughput or response time numbers, identifying bottlenecks, and optimizing and tuning Web applications in an enterprise environment to achieve required application performance.

Our mission is to drive performance improvements into Microsoft’s production Web applications. We do this by providing performance analysis leadership and world-class tuning services. This book outlines and details our experiences and the methodology we’ve developed while working in the dynamic and challenging environment of Microsoft’s corporate intranet and extranet infrastructure.

Who This Book is For

Because Web performance analysis is a relatively new field (compared to software development and its traditional developer, test, and IT roles) it’s difficult to name a specific group of professionals for whom this book is intended, except to say that anyone who needs to ensure that a Web application running on Microsoft technologies can perform adequately will find this book valuable. For test teams, this book offers a full spectrum of “how to” techniques to analyze applications for performance. For managers who are responsible for Web application performance planning, this book offers help with how to include performance analysis in the development life cycle, estimate hardware capacity needs, and budget for future infrastructure needs.

About the Companion CD-ROM

The CD-ROM included with this book contains the following items:

  • An AutoRun menu for linking to the resources on the CD

  • Sample files for the book

  • Information on ASP Timers

  • System Monitor templates

  • A setup program to install the sample files

  • A Microsoft PowerPoint presentation of Compuware’s Application Expert

  • An electronic version of the book (eBook)

Using the Companion CD-ROM

The StartCD program provides a graphical interface to the content on the CD-ROM. If you have AutoRun enabled, this program will open by default when you insert the CD into your CD-ROM drive. To use the companion CD, insert it into your CD-ROM drive. If AutoRun is not enabled on your computer, run StartCD.exe in the root of the CD to display the Start menu. The menu provides access to all the resources on the CD, including links for installing the software you will need to view the files contained on the CD and to access the Microsoft Press product support Web site.

Sample Files

ACT test scripts for the test runs discussed in the book are included on the CD-ROM in the Sample Files folder. To copy all the sample files to your hard disk, run Setup.exe in the Setup folder and follow the instructions that appear on the screen. The samples require about 5 MB of hard disk space. To uninstall the sample files, open the Control Panel, choose Add or Remove Programs, and make the appropriate selection.

ASP Timers

A Microsoft Word document that describes how to create an ASP Timer using Microsoft Visual Basic Scripting Edition (VBScript) or JScript can be found in the Chapter05 folder on the CD-ROM.

System Monitor Templates

System Monitor templates with pre-defined performance counters are also included on this CD-ROM. These templates allow you to easily start monitoring the performance of your Internet Information Services (IIS) or SQL server. The templates can be found in the Chapter04 folder.

PowerPoint Presentation: Compuware Application Expert

Compuware’s Application Expert is covered in Chapter 5 of the book. The Power­Point presentation included in the Chapter05 folder on the CD-ROM illustrates some of the common features of Application Expert.

EBook

The complete text of the printed book is contained on the CD-ROM in a fully searchable electronic version. To install the eBook, run Autorun.exe in the eBook folder. Microsoft Internet Explorer 5.01 or later and the proper HTML Help components are required to view the eBook. If your computer does not have Internet Explorer 5.01 or later, the setup program will offer to install Internet Explorer 5.5 for you. The setup program has been configured to install the minimum files necessary to view the eBook, and it will not change your current settings or associations. If your computer runs on Microsoft Windows NT 4.0, Microsoft Windows 2000, or Microsoft Windows XP, you will need administrative privileges to install the eBook. If you do not have administrative privileges and your system has Internet Explorer 5.01 or later, you can view the eBook by opening the perftest.CHM file in the eBookIs_001 folder.

CD-ROM Requirements

  • Microsoft Windows XP or Windows 2000

  • Microsoft Visual Studio .NET, Enterprise Developer or Enterprise Architect Editions

The following are the requirements to run Visual Studio .NET

  • Computer/Processor

    PC with a Pentium II-class processor, 450 MHz

  • Memory

    96 MB for Windows 2000 Professional; 160 MB for Windows XP Professional

  • Hard Disk

    2.5 GB of hard disk space including a minimum of 500 MB on the system drive

  • Drive

    CD-ROM or DVD-ROM

  • Display

    Super VGA (800 x 600) or higher resolution monitor with 256 colors

  • Operating System

    Windows 2000 or Windows XP

  • Peripherals

    Microsoft Mouse or compatible pointing device

Chapter Overviews

The book is divided into four parts to address the differing phases of the performance testing process, as shown in the following table.

Table I-1. Phases of Performance Testing

For this content

See these chapters

Planning

1, 2

Execution

3, 4

Analysis

5, 6, 7, 8

Modeling

9, 10

Following is a brief overview of each chapter. For those of you in a hurry to skip some chapters, we give you an idea of the concepts covered in each.

Chapter 1: Laying the Performance Analysis Ground Work

Chapter 1 details where performance testing resides in the software development life cycle and why performance testing is as important as functional testing of the application. It describes how the results from a performance test provide a more realistic application deployment scenario and a substantial cost savings for the project. Additionally, it provides a background of the performance testing methodology used in the book.

Chapter 2: Preparing and Planning for the Performance Test

Before executing the performance test, you must compile specific information regarding the application being tested. Chapter 2 provides an overview of the information the tester is expected to gather and the sources where they can find this data. Sources include marketing forecasts, production IIS logs, performance logs, and functional specifications for the application.

Chapter 3: Stress Testing with Microsoft Application Center Test (ACT)

Because the book discusses Web applications built solely using Microsoft software and technologies, the application stress tool discussed in the book is Microsoft Application Center Test (ACT). ACT is relatively new. Chapter 3 takes a detailed look at the tool, focusing on how to create test scripts using ACT and explaining the intricacies of scripting Web applications.

Chapter 4: Monitoring Application Performance with System Monitor

The primary tool that you’ll use when conducting Web application performance analysis is System Monitor. Chapter 4 introduces System Monitor and explains some of the most commonly used performance counters and how to use them when tracking down processor, disk, and memory bottlenecks.

Chapter 5: Application Network Analysis

Chapter 5 provides an overview network performance analysis, which is targeted at identifying pages or functions that are taking the most time to load within an application. ACE provides tips on identifying slow pages or functions by capturing all traffic within your application using Network Monitor and then analyzing the captured data to extrapolate end user response times, bytes transferred, and network round trips.

Chapter 6: Analyzing and Performance Tuning the Web Tier

Data collected at the IIS tier can reveal bottlenecks within the ASP.NET code, middle tier or SQL tier. The reader is instructed to interpret the IIS logs and performance monitor logs to find these bottlenecks. Recommendations are included in Chapter 6 on how to address bottlenecks at the IIS tier.

Chapter 7: Profiling Managed Code

It is essential to understand how to analyze and profile managed code to successfully performance test Microsoft .NET Web applications. Chapter 7 details features of the .NET Framework that directly effect performance of your .NET Web application. This chapter also provides an overview of key .NET performance counters and two useful applications that can be used when profiling managed code performance.

Chapter 8: Analyzing the SQL Tier

Bottlenecks at the SQL tier can reduce the performance of Web-based applications by thousands of percent. Bottlenecks at the back end can also be extremely difficult to pinpoint and correct. It takes a high level of SQL expertise to correctly diagnose and correct problems at the Microsoft SQL server level. Chapter 8 shows the reader some of the more basic methods to profile SQL server activity, detect the bottleneck, and then correct the problem by optimizing SQL Server code and modifying the database architecture.

Chapter 9: Estimating IIS Tier Capacity with Transaction Cost Analysis

Chapter 9 explains in depth Microsoft’s methodology for calculating the Transaction Cost Analysis (TCA) of a Web-based application. TCA numbers are used to measure a Web site’s capacity to host users; they can also be a means to measure performance improvements made to the application.

Chapter 10: Performance Modeling: Tools for Predicting Performance

One goal of performance modeling is to be truly proactive in performance engineering—to examine a proposed system in its entirety, from hardware and network resources to code optimization, before completely building any one component. In Chapter 10, ACE covers scenarios in which performance modeling can replace other methods of performance assessment and engineering, different methods of modeling and when they are appropriate for use, a brief look at currently available performance modeling tools and a detailed look at the toolkit approach, represented by Microsoft’s Indy project.

Support

Every effort has been made to ensure the accuracy of this book and the contents of the companion CD-ROM. Microsoft Press provides corrections for books through the World Wide Web at the following address:

http://www.microsoft.com/mspress/support/

To connect directly to the Microsoft Press Knowledge Base and enter a query regarding a question or issue that you may have, go to:

http://www.microsoft.com/mspress/support/search.asp

If you have comments, questions, or ideas regarding this book or the companion CD-ROM, please send them to Microsoft Press using either of the following methods:

Postal Mail:

Microsoft Press

Attn: Performance Testing Microsoft .NET Web Applications Editor

One Microsoft Way

Redmond, WA 98052-6399

E-mail:

Please note that product support is not offered through the above mail addresses. For support information, please visit the Microsoft Product Support Web site at

http://support.microsoft.com

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset