Home Page Icon
Home Page
Table of Contents for
Cover
Close
Cover
by MICROSOFT ACE TEAM
Performance Testing Microsoft® .NET Web Applications
Dedication
Acknowledgements
Introduction
Who This Book is For
About the Companion CD-ROM
Using the Companion CD-ROM
Sample Files
ASP Timers
System Monitor Templates
PowerPoint Presentation: Compuware Application Expert
EBook
CD-ROM Requirements
Chapter Overviews
Chapter 1: Laying the Performance Analysis Ground Work
Chapter 2: Preparing and Planning for the Performance Test
Chapter 3: Stress Testing with Microsoft Application Center Test (ACT)
Chapter 4: Monitoring Application Performance with System Monitor
Chapter 5: Application Network Analysis
Chapter 6: Analyzing and Performance Tuning the Web Tier
Chapter 7: Profiling Managed Code
Chapter 8: Analyzing the SQL Tier
Chapter 9: Estimating IIS Tier Capacity with Transaction Cost Analysis
Chapter 10: Performance Modeling: Tools for Predicting Performance
Support
1. Laying the Performance Analysis Groundwork
Why Is Performance Testing and Tuning Important?
Effects of Current and Emerging Architecture Technologies
What Is .NET?
The .NET Platform
Standard .NET Protocols
Web Service Description Language (WSDL)
Universal Description, Discovery, and Integration (UDDI)
What Is an XML Web Service?
Devices Drive Demand for Web Services
Web Services Will Increase Importance of Web Performance Testing
Performance Goals
Computer Interaction Behavioral Patterns
Performance Testing Your Application
Planning Performance Analysis
Creating Effective Stress Scripts
Executing Stress Tests
Analyzing Performance Results
Identifying Performance Bottlenecks
Verifying Performance Tuning Results
Conclusion
2. Preparing and Planning for the Performance Test
Identifying Performance Goals
Response Time Acceptability Goals and Targets
Throughput Goals and Concurrent User Targets
Performance Growth Analysis
User Activity Profile
Backend Activity Profile
Identifying a Web Application’s User Activity
Identifying a Web Application’s Backend Performance Bottlenecks
Key Performance Metrics Criteria
Mirroring the Production Environment
Putting It Together in a Performance Test Plan
Conclusion
3. Stress Testing with Microsoft Application Center Test (ACT)
Getting Started
What is ACT?
Installing Microsoft ACT
Core Concepts of ACT
Dynamic Tests
Concurrent Users and ACT Simultaneous Browser Connections
User Sleep Times
Users and Groups
Cookies
Headers
Authentication and Encryption
Integrated Windows Authentication
Basic and Digest Authentication
Anonymous Authentication
Passport Authentication
Secure Sockets Layer (SSL)
Using SOAP with ACT
Parsing Viewstate within ACT
Protecting your Web Site from Inadvertent Stress Testing
Running ACT
Overview of the ACT User Interface
Tests
Results
Users
Creating a Test Script
Recording a Test Script
Analyzing a Recorded Test Script
Creating a Test Script Manually
Creating a test script to Stress the SQL Tier
Setting Test Properties Prior to Script Playback
Script Modification—Avoiding “Record and Playback”
Debugging ACT Test Scripts
Test Script Verification
Scripts and Load Clients
Executing a Performance/Stress Test
Create a Controlled Environment
Conclusion
4. Monitoring Application Performance with System Monitor
Using System Monitor
Viewing Real-Time Performance Data
Chart View
Graph View
Counter Color
Counter Scale
Counter Characteristics
Parent Instance Name
Computer Name
Value Bar
Histogram View
Report View
How Often Should You Collect Data?
Logging and Viewing Logged Data
Monitoring Remote Computers
Monitoring Objects, Counters, and Instances for Performance Bottlenecks
Processor Bottlenecks
Typical Processor-related Problems and Solutions
System Object
Disk Bottlenecks
How the ACE Team Discovered a Disk Bottleneck
10-Second Wait Time Test Scenario on Server 1
10-Second Wait Time Test Scenario on Server 2
60-Second Wait Time Test Scenario on Server 1
60-Second Wait Time Test Scenario on Server 2
Disk Architecture Matters to Performance
Memory
How the ACE Team Discovered a Memory Leak
Create and Configure Alerts
Conclusion
5. Application Network Analysis
Conducting an Application Network Analysis
Network Latency
Network Round Trips
Reducing Network Round Trips
Data Transferred
Reducing the Quantity of Data Transferred
Processing Delay
Reducing Processing Delays
Response Times
User Scenarios
Identify User Scenarios
Using Microsoft Network Monitor
MAC Address and IP Address Setup
Configuring Network Monitor Settings
Environment Setup
Capturing Network Traffic
Network Monitor Capture Structure
Using Compuware’s Application Expert
Conversation Map
Bounce Diagram
Thread Analysis
Response Time Predictor Tool
Interpreting Network Captures with Application Expert
Calculating Data Transferred
Counting Network Round Trips
Identifying Application Processing Delays
Predicting Response Times
Conclusion
6. Analyzing and Performance Tuning the Web Tier
Getting Started
Understanding Configuration and Performance
ASP.NET File Extensions
Authentication in ASP.NET
Windows-based Authentication
Passport Authentication
Form-based Authentication
Configuration Files
Understanding Your Web Application
Profiling a .NET Web Application
IIS Log Files
Log File Formats
Identifying Problem Pages from a Log File
Tracing Problems to the Code Level
Tracing in Traditional ASP Pages
Tracing in ASP.NET
Identifying Problem Code in ASPX Pages
System Monitor Counters
Performance Counters for IIS
Performance Counters for ASP.NET
ASP.NET System Performance Counters
ASP.NET Application Performance Counters
Performance Tuning Tips
Application and Session State
Application State
Session State
Caching in ASP.NET
Output Caching
Fragment Caching
Caching API
Disabling ViewState
ADO.NET Tips
SqlConnection Object
SqlCommand Object
ExecuteNonQuery Method
ExecuteScalar Method
ExecuteReader Method
ExecuteXMLReader Method
Common Web Tier Bottlenecks
Limiting Page Size
Limiting Images
Using Naming Conventions
Disabling SSL
Trying New Features
Scaling the Web Tier
Scale Out, Scale Up, or Performance Tune?
Scaling Out
Scaling Up
Performance Tuning
When to Scale your Web Tier?
How to Scale Out your Web Tier?
Software-based Load Balancing
Hardware-based Load Balancing
Conclusion
7. Performance Analysis of Managed Code
CLR and Performance
Microsoft Intermediate Language
The Just-in-Time Compiler
The Pre-JIT Alternative
The Life and Times of a .NET Web Application
Load Time—AppDomains
Run Time—Interoperability
Run Time—Garbage Collection
Generations and Promotion
Pinned Objects
Finalization
Differences Between Workstation and Server GC
Run Time—Exceptions
Exceptions in Unmanaged Code
Exceptions and Performance
.NET Performance Counters
.NET CLR Memory Object
# GC Handles Performance Counter
# Gen 0 Collections
# Gen 1 Collections
# Gen 2 Collections
# Total Committed Bytes
% Time in GC
Gen 0 heap size
Gen 0 Promoted Bytes/sec
Gen 1 heap size
Gen 1 Promoted Bytes/sec
Gen 2 heap size
.NET CLR Loading
Total AppDomains
Total Assemblies
Total Classes Loaded
.NET CLR LocksAndThreads
Contention Rate/sec
Total # of Contentions
Current Queue Length
.NET CLR Exceptions
# of Exceps Thrown
# of Exceps Thrown /sec
.NET CLR Security
# Link Time Checks
% Time in RT checks
Stack Walk Depth
Total Runtime Checks
Profiling Managed Code
Using Compuware DevPartner Studio
Profiling with DevPartner Studio
Profiling Session Window
Profiling Method Details
Working with Distributed Applications
Effective Performance Analysis for .NET
Understand What You Want to Measure
Understand Start-up Costs
Understand .NET Framework Costs
Collect Complete Data for Distributed Applications
Using AppMetrics to Monitor .NET Enterprise Services Components
AppMetrics Manager and Agent Monitors
Setting Up AppMetrics Manager and Agent
Pre-Production Monitoring in AppMetrics
Additional Diagnostics Information
Production Monitoring
Conclusion
8. Analyzing the SQL Tier
Getting Started
Identifying Bottlenecks
Tools We Use
SQL Profiler
System Monitor
SQL Query Analyzer
Blocking Problems
Identifying Blocking Connections
Locks
Deadlocks
Additional Resources
Index Tuning
Analyzing the Execution Plan
Populating Data
Viewing the Execution Plan
Additional Tuning Information
Understanding Indexes
Choosing Right Indexes
Nonclustered Index
Covering Index Example 1
Covering Index Example 2
Clustered Index
FILLFACTOR
Indexed View
Conclusion
9. Estimating IIS Tier Capacity with Transaction Cost Analysis
Concurrent Users: A Loosely Defined Term
Concurrent Server Request Processing
TCA Concurrent Users
Benefits of Completing a TCA
TCA In Five Steps
Step 1—Create A User Profile
Step 2—Stress Test for User Operation Costs
TCA Stress Test Goals and Parameters
Identifying Maximum Throughput
Minimizing the Number of Pages Needed per Operation
Step 3—Calculate the Cost per User Operation
Cost Per User Operation/Sec Calculation
Interpreting the Cost per User Operation Numbers
Performing TCA “What If” Scenarios
Step 4—Estimate Site Capacity
Mean User Profile Capacity Estimates
Increased Add to Basket Traffic “What If” Scenario Capacity Estimates
Step 5—Verify Site Capacity
Conclusion
10. Performance Modeling: Tools for Predicting Performance
Predicting and Evaluating Performance Through TCA
Advanced Performance Modeling
Performance Modeling Technology
Modeling Scenarios
Capacity Planning
Bottleneck Analysis
Hardware Configuration
Architectural Assessment
User Scenarios
Performance Modeling Methods
Analytical Modeling
Statistical Modeling
Simulation
Advanced Performance Modeling
Performance Modeling Tools
Indy: A Performance Technology Infrastructure
Indy Concepts
Indy Architecture
Kernel
Hardware DLLs
Workload DLLs
Interface Definitions
Front-end EXEs
IndyView
System Topology
IBuySpy Search Transaction
TCA vs. Performance Modeling Conclusions
Building What-if Scenarios Using Indy
What-if Scenario 1: Bottleneck Analysis
What-if Scenario 2: Architectural Improvements
Conclusion
A. About the Author
About the Author
Copyright
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Next
Next Chapter
Performance Testing Microsoft .NET Web Applications
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset