Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

19
Web Load Testing with Microsoft Visual Studio 2010 Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315

Transcript of Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Page 1: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Web Load Testing with Microsoft Visual Studio 2010Richard CampbellCo-FounderStrangeloop Networks

SESSION CODE: WEB315

Page 2: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Richard Campbell

BackgroundFirst laid hands on a microcomputer in 1977, it’s been all downhill since thenSpent the last 15 years helping companies scale applications on a variety of platforms

CurrentlyCo-Founder and Product Evangelist for Strangeloop NetworksCo-Host of .NET Rocks!Host of RunAs Radio

Page 3: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Why Load Test?

All applications break down under loadThe question is: How much load?

Application logic breaks down under loadAnd that leads to logic error messages for your users

Load issues take time to correctYou can’t rush a caching model into your code

Page 4: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

All I Need Is One Good Script

Start with the most common scenarioWhat is likely to be the first scenario that is stress-tested in the real world?

Then build a battery of scripts as the need arisesCreate scripts based on real problems your real users are having

Page 5: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

What Tools?WCat 6.3

Light-weight, free, no UI, tricky to set up

Visual Studio 2008 Team Edition for Software TestersThe older tool, but good for web testing

Visual Studio 2010 UltimateWeb load test tools come only in the ultimate edition

Page 6: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

What Metrics?

PerformanceTime To First Byte (TTFB)

How long does it take for the first byte to arrive at the browser?Time To Last Byte (TTLB)

How long does it takes for the last byte to arrive at the browser?Total Load Time

How long for everything to arrive at the browser?

Page 7: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

What Metrics?

ThroughputActive SessionsActive UsersConcurrent UsersPages per SecondTransactions per Second

Page 8: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

What Metrics?

BandwidthPayload sizeRound Trip Time (RTT)AppTurns

Each additional request a browser has to make to the server to complete a web page is an AppTurn

Page 9: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Server Measurements

Memory% Committed Bytes, Working Set Size

Processor% Consumption

ASP.NETSession CountRequests/Sec

IISRequest Queue Length

Page 10: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Performance vs. Scale

Load Time vs. Active UsersPerformance focuses on lowest load timeScale focuses on consistent load times regardless of user count

Everything in Cache vs. No more RAMIf its all cached, its super fastIf you run out of memory, nothing is fast

Page 11: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Refactoring for Performance

Cache is KingInvalidation paradigm is crucial

Output caching vs. Cache objectVarybyCustom Output cachingSQL Cache Dependencies

Page 12: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Evolving Your Application

Discover caching opportunities

Find logical domainsStatic resources, authentication

Distribute within the domain

Page 13: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Summary

Establish load test regime earlyScript the most common scenario

Understand what is important to your users and your applicationPerformance, throughput, bandwidth

Evolve your applicationCreate a performance planSpecialize and distribute

Page 14: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Track ResourcesASP.NET – http://www.asp.net/ Silverlight – http://silverlight/ Expression – http://www.microsoft.com/expression/ Internet Explorer – http://www.microsoft.com/windows/internet-explorer/default.aspx

Page 15: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Resources

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

Resources for IT Professionals Resources for Developers

www.microsoft.com/learning

http://microsoft.com/technet http://microsoft.com/msdn

Learning

Page 16: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Complete an evaluation on CommNet and enter to win!

Page 17: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st

http://northamerica.msteched.com/registration

 You can also register at the

North America 2011 kiosk located at registrationJoin us in Atlanta next year

Page 18: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to

be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 19: Richard Campbell Co-Founder Strangeloop Networks SESSION CODE: WEB315.

JUNE 7-10, 2010 | NEW ORLEANS, LA