P1246341512AGhQT - PowerPoint PPT Presentation

About This Presentation
Title:

P1246341512AGhQT

Description:

Introduction to Load Testing Web Applications. Testing from Development to Deployment ... problems with only a few users (you don't have to be Victoria's Secret) ... – PowerPoint PPT presentation

Number of Views:70
Avg rating:3.0/5.0
Slides: 37
Provided by: robertd8
Category:

less

Transcript and Presenter's Notes

Title: P1246341512AGhQT


1
Presentation to theRockville MDCFUG
Load Testing Early and Often By Donald Doane
2
Session Overview
OpenDemand Systems
  • Introduction to Load Testing Web Applications
  • Testing from Development to Deployment
  • Load Testing Over the LAN vs. the Internet
  • Creating a Real-World Example in ColdFusion
  • Load Testing Best Practices
  • Identifying Common Performance Bottlenecks
  • ColdFusion Performance Tuning Hints and Tips
  • Questions Answers

3
The ColdFacts
OpenDemand Systems
  • Most developers are familiar with the concept
    of load testing, but very few actually do it!
  • Most common reasons for not testing are Time,
    Complexity Cost ( can be very expensive)
  • Most sites run into performance problems with
    only a few users (you dont have to be Victorias
    Secret)
  • Most performance problems are discovered too
    late in the game to properly address the issues

4
What is a Load Test?
OpenDemand Systems
  • Simulates multiple users to measure, define,
    validate and maintain optimal application
    performance, scalability and reliability
  • Serves as a compass for understanding the limits
    of any Web-enabled application and, subsequently,
    for managing its performance and growth

5
Why Load Test from Development to Deployment?
OpenDemand Systems
  • Identifies problems early on before they become
    costly to resolve (avoid the pyramid effect)
  • Prevents the Onion-Peel syndrome
  • Reduces development cycles
  • Produces better quality, more scalable code
  • Prevents revenue and credibility loss due to
    poor Web site performance
  • Increases customer satisfaction and retention
  • Enables intelligent planning for future expansion

6
What does it mean for your site to perform or
scale well?
OpenDemand Systems
  • Delivers page views to users in 8 seconds or
    less (industry standard)
  • Performs consistently across multiple page view
    requests (avoid the wack-o-mole effect)
  • Response times scale linearly as user load
    increases as opposed to exponentially

7
Virtual User Simulation
OpenDemand Systems
  • One-to-many relationship between user and
    browser requests
  • Browser opens multiple concurrent connections to
    Web server
  • HTTP Request-Response Thread
  • GET / HTTP/1.1Host www.mysite.com--------------
    -----------------
  • HTTP/1.1 200 OK
  • Content-Length 327
  • Content-type text/html
  • BODY

8
OpenDemand Systems
Virtual Users
Your Browser
OpenLoad Appliance
Virtual Users
Your Web Site/App
Virtual Users
9
Load Testing over the LAN vs. the Internet
OpenDemand Systems
  • LAN Testing
  • Eliminates network variability due to the
    Internet
  • Saturates system rather than the network
  • Internet Testing
  • Uncovers hidden delays due to Internet weather
  • Exercises your pipe, routers, firewalls and load
    balancers in addition to the system under test
  • Ensures Service Providers are meeting SLAs

10
Load Testing Dos
OpenDemand Systems
  • Do test early and do test often
  • Do establish what is and is not acceptable
    performance for your application
  • Do test from the users perspective - its the
    only one that counts
  • Do baseline and compare your findings
  • Do monitor your system while you test
  • Do test whenever theres a change in your sites
    content, code or infrastructure

11
Load Testing Donts
OpenDemand Systems
  • Dont wait until the last minute to test
  • Dont depend on your customers to do your
    testing for you
  • Dont test under unrealistic conditions
  • Dont forget that increases in table sizes, disk
    usage and network traffic will degrade your
    applications performance over time
  • Dont be so quick to throw hardware at the
    problems you turn up - it doesnt always help

12
Creating a Real-World Example in ColdFusion
OpenDemand Systems
  • Customer Case Study
  • Set up a User Profile
  • Configure a Load Test Scenario
  • Schedule a Load Test
  • Analyze Test Results

13
OpenDemand Systems
14
OpenDemand Systems
15
OpenDemand Systems
16
OpenDemand Systems
17
OpenDemand Systems
18
OpenDemand Systems
19
OpenDemand Systems
20
OpenDemand Systems
21
OpenDemand Systems
22
OpenDemand Systems
23
OpenDemand Systems
24
OpenDemand Systems
25
OpenDemand Systems
26
OpenDemand Systems
27
OpenDemand Systems
28
OpenDemand Systems
29
OpenDemand Systems
30
OpenDemand Systems
31
OpenDemand Systems
32
Identifying Common Performance Bottlenecks
OpenDemand Systems
  • Over design of Web pages (too many graphics)
  • Bad code (avoid recursive function calls)
  • Web server connection limit too low (IIS is set
    to 10 by default)
  • Poorly tuned Web application server (play with
    your Administration Server Settings)
  • Excessive queue lengths (more than one) wait
    times (more than a few milliseconds)
  • Memory contention issues (paging in)
  • Heavy disk I/O (high service times)
  • Network latency (packet collisions lost)

33
Performance Tuning Hints Tips
OpenDemand Systems
  • Observe design coding best practices (Fusebox)
  • Pre-load images before they are needed
  • Validate on the client whenever possible
    (JavaScript or ActionScript)
  • Strip formatting white space, tabs, carriage
    returns and line feeds from HTML (speeds up
    response)
  • Upgrade to CF5 (Up to 5x faster than CF4.5)
  • Tune simultaneous requests per CPU (cfstat)
  • Turn on Trusted Cache increase cache size
  • Restart server at 5-10 unresponsive requests

34
Performance Tuning Hints Tips Contd
OpenDemand Systems
  • Log slow pages (remember 8-second rule)
  • Enable Debugging (check processing time)
  • Replace frequently referenced Custom Tags with
    User Defined Functions (less overhead)
  • Bump up your cached query limit (if you can
    spare the memory)
  • Let ColdFusion work smarter and your Database
    work harder (write smart SQL - dont do SELECT )
  • Use stored procedures for faster execution

35
Test your app for FREE
OpenDemand Systems
  • Register at http//www.opendemand.com/cf/
  • Test for up to 5 virtual users for FREE!
  • Try-out performance tuning tips
  • Test again and compare results to your baseline

36
OpenDemand Systems
QA
ddoane_at_opendemand.com http//www.opendemand.com
Write a Comment
User Comments (0)
About PowerShow.com