SlideShare una empresa de Scribd logo
1 de 20
Is the current model of load
testing broken?
  Steve Thair
  Seriti Consulting
  @TheOpsMgr
2




        Some background….
          My User Group – Dec 2011 -




             http://www.meetup.com/London-Web-Performance-Group/


(c) Seriti Consulting, 2011
Delivery           Alert                 Deviation
                                                                                                                              from
                                                                                    Team
                                                                                                                            normal?




                                         Ready                                                       Fail                    Fail to
                                          for                                         Build                                   meet
                                         Test?                                                                               SLA’s?


                                                Deploy


                                                             Measurements
                                    Environment




           Continuous                                              End User
                                                                                                            Perf Trends
              Load                                                 Response
            Injection
                                                                                                                      For Each Data
                                                                 Service/API                                          Point
                     Usage                                        response
                     Profile
           Production
              logs                                                 System
                                                                                                            Perf Details
                                                                   monitors


http://www.slideshare.net/sthair/continuous-integration-a-performance-engineers-journey
           CONFIDENTIAL and not for reproduction without prior written consent. © of the Sporting Exchange Limited.
4




        The Killer Comment…
   “We’ve had to look at separating load
        injection from performance
               measurement”.
                              - Andrew Harding, Betfair

                                         http://www.seriticonsulting.com/blog/2011
                                         /12/9/is-the-current-model-of-
                                         loadperformance-testing-broken.html

(c) Seriti Consulting, 2011                                      @TheOpsMgr #ukcmg #webperf
So why are you paying all                    5
                      that money for that
   What are key     expensive brand-name
 reasons behind     load testing tool then?
  that decision?
                                                Surely there are
                                                open source or
                                                  cheap cloud
                                                 tools if all you
                                                 want is load?




                                                    What other
                                                issues might we
                                                     have with
  What are you
                                                “traditional” load
using to measure
                                                 testing models
  Performance
                                                   in a Web 2.0
      then?
                                                       world?

                                               @TheOpsMgr #ukcmg #webperf
6




Defining the “current model”
“Stephen didn’t explicitly define
what the current model of
load/performance testing is…”
                  Alex Podelko


http://applicationperformanceengineeringhub.com/is-the-current-model-
of-loadperformance-testing-broken/


                                                       @TheOpsMgr #ukcmg #webperf
7




            “Current Model Straw Man”
(1) Waterfall Development Cycle
(2) Load Tool compiles the report
(3) Reporting at the end of the test
(4) Request / Response paradigm
(5) Well-defined customer journeys

(c) Seriti Consulting, 2011
8




Testing in a CI/Agile world
 Performance testing initiated every time code is committed to
  the CM repository (e.g. SVN, GIT etc)
 Betfair issue was that their system was complex with many
  layers of caching etc so it took longer to “warm up” the
  environment (to achieve a steady performance state) than
  they had between check-ins…
 So they needed “continuous injection” to keep the
  environment constantly warm…
 The test tool never “stopped” to “compile the report”…
 So any tool that “reported at the end” wasn’t as useful…

                                                   @TheOpsMgr #ukcmg #webperf
9




Test tools in a APM & RUM world
 “traditional test tools” generally have the ability to deploy
  agents to gather metrics from the target environment
 But the depth of analysis and correlation falls well below that
  of modern Application Performance Management tools e.g.
  AppDynamics
 APM tools offer a deeper insight and better event correlation
  across tiers…
 And they are getting (much) cheaper…



                                                     @TheOpsMgr #ukcmg #webperf
APM Measurement




                  @TheOpsMgr #ukcmg #webperf
Google Real Time Analytics




                        @TheOpsMgr #ukcmg #webperf
12




WebSockets
 HTTP 1.1
   Start Timer
    GET /index.html
    Response 200 OK
   Stop Timer
 WebSockets
   Start Timer
    Socket “upgrade”
    N many frames…
   Stop???             Bi-directional socket channel




                                        @TheOpsMgr #ukcmg #webperf
13




HTTP 2.0
 HTTP 1.1
    Sequential
    ordered
 HTTP 2.0 (& SPDY)
    Multiplexed over a
     single connection
    Responses
     returned out of
     sequence…
    Hard to time!

http://stackoverflow.com/questions/10480122/difference-between-http-pipeling-and-http-multiplexing-with-spdy
                                                                                          @TheOpsMgr #ukcmg #webperf
14




Website Complexity
    263,000 entry points…




                             @TheOpsMgr #ukcmg #webperf
15




Visitor Flow
 How many paths thru a
  website?
 Classic script-driven
  approaches can’t hope to
  address the complexity
 Network and log file
  replay solutions?




                             @TheOpsMgr #ukcmg #webperf
16




A PCAP Solution to Replay?
 POC solution based on Cloudmeter
  Pion + custom scripts
   Read a PCAP (network capture)
   Identify the HTTP traffic
   Filter it (based on your requirements)
   Parameterise it (query strings, POST
    parameters etc)
   Randomise inputs from SQL, CSV etc
   Replay it against a test environment
       i.e. change the base URL
   Amplify & rate throttle req/sec as
    required

                                             http://www.cloudmeter.com/pion/data-processing.php


                                                                       @TheOpsMgr #ukcmg #webperf
17




                                                        Personal Opinion!
                                                            YMMV…


So what’s the Answer?
 Use the cheapest method to generate load that you can
  find…
 Move away from scripting-based approaches towards using
  real-user session replay (if possible!)
 Generate load continuously
 Measure continuously
   using APM & RUM type tools – FOSS or Commercial
   Look for changes in histograms, averages, standard dev etc
 Protocol and Framework aware instrumentation
   AFAIK this currently doesn’t exist…
                                                      @TheOpsMgr #ukcmg #webperf
18




        @LDNWebPerf User Group!
          Join our London Web Performance Meetup
               http://www.meetup.com/London-Web-Performance-Group/
          Next Wednesday 17th Oct – 7pm – Central London
          Follow us on Twitter @LDNWebPerf
          #LDNWebPerf & #WebPerf




(c) Seriti Consulting, 2011                                  @TheOpsMgr #ukcmg #webperf
19




        About Me
          21yrs IT experience.
                 Started with www in 1998 (IIS3! Site Server 3!).
                 Web Architect @ BNP Paribas, CSFB etc
                 Web Operations Manager for www.totaljobs.com, www.tes.co.uk
                 Professional Services Manager @ www.siteconfidence.com
                 Seriti Consulting – specialising in web operations, management and
                  Performance
            e:stephen.thair@seriticonsulting.com
            m:+44 7971 815 940
            Twitter: http://twitter.com/TheOpsMgr
            Blog: http://www.seriticonsulting.com/blog/
            LinkedIn: http://uk.linkedin.com/in/stephenthair
            Skype: seriti-steve
(c) Seriti Consulting, 2011                                               @TheOpsMgr #ukcmg #webperf
20




        Questions?




(c) Seriti Consulting, 2011   @TheOpsMgr #ukcmg #webperf

Más contenido relacionado

La actualidad más candente

Agile Testing Practices
Agile Testing PracticesAgile Testing Practices
Agile Testing PracticesPaul King
 
1004 z2 env_positioned
1004 z2 env_positioned1004 z2 env_positioned
1004 z2 env_positionedHenning Blohm
 
OTM DELIVERED : How Business Process Outsourcing and Preconfigured Solutions...
OTM DELIVERED: How Business Process Outsourcing and Preconfigured Solutions...OTM DELIVERED: How Business Process Outsourcing and Preconfigured Solutions...
OTM DELIVERED : How Business Process Outsourcing and Preconfigured Solutions...MavenWire
 
Quality on Submit
Quality on SubmitQuality on Submit
Quality on SubmitAgileSparks
 
Research platform architecture
Research platform architectureResearch platform architecture
Research platform architecturePierre Menard
 
Agile Open Source Performance Test Workshop for Developers, Testers, IT Ops
Agile Open Source Performance Test Workshop for Developers, Testers, IT OpsAgile Open Source Performance Test Workshop for Developers, Testers, IT Ops
Agile Open Source Performance Test Workshop for Developers, Testers, IT OpsClever Moe
 
Migrating Legacy Code
Migrating Legacy CodeMigrating Legacy Code
Migrating Legacy CodeSiddhi
 
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...manssandstrom
 
Introduction to OSLC
Introduction to OSLCIntroduction to OSLC
Introduction to OSLCopenservices
 
Java on zSystems zOS
Java on zSystems zOSJava on zSystems zOS
Java on zSystems zOSTim Ellison
 
Fred.ouellette
Fred.ouelletteFred.ouellette
Fred.ouelletteNASAPMC
 
Make Your Testing Groovy
Make Your Testing GroovyMake Your Testing Groovy
Make Your Testing GroovyPaul King
 

La actualidad más candente (12)

Agile Testing Practices
Agile Testing PracticesAgile Testing Practices
Agile Testing Practices
 
1004 z2 env_positioned
1004 z2 env_positioned1004 z2 env_positioned
1004 z2 env_positioned
 
OTM DELIVERED : How Business Process Outsourcing and Preconfigured Solutions...
OTM DELIVERED: How Business Process Outsourcing and Preconfigured Solutions...OTM DELIVERED: How Business Process Outsourcing and Preconfigured Solutions...
OTM DELIVERED : How Business Process Outsourcing and Preconfigured Solutions...
 
Quality on Submit
Quality on SubmitQuality on Submit
Quality on Submit
 
Research platform architecture
Research platform architectureResearch platform architecture
Research platform architecture
 
Agile Open Source Performance Test Workshop for Developers, Testers, IT Ops
Agile Open Source Performance Test Workshop for Developers, Testers, IT OpsAgile Open Source Performance Test Workshop for Developers, Testers, IT Ops
Agile Open Source Performance Test Workshop for Developers, Testers, IT Ops
 
Migrating Legacy Code
Migrating Legacy CodeMigrating Legacy Code
Migrating Legacy Code
 
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
 
Introduction to OSLC
Introduction to OSLCIntroduction to OSLC
Introduction to OSLC
 
Java on zSystems zOS
Java on zSystems zOSJava on zSystems zOS
Java on zSystems zOS
 
Fred.ouellette
Fred.ouelletteFred.ouellette
Fred.ouellette
 
Make Your Testing Groovy
Make Your Testing GroovyMake Your Testing Groovy
Make Your Testing Groovy
 

Destacado

London web performance WPO Lessons from the field June 2013
London web performance   WPO Lessons from the field June 2013London web performance   WPO Lessons from the field June 2013
London web performance WPO Lessons from the field June 2013Stephen Thair
 
Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011Stephen Thair
 
Measuring mobile performance (@LDNWebPerf Version)
Measuring mobile performance (@LDNWebPerf Version)Measuring mobile performance (@LDNWebPerf Version)
Measuring mobile performance (@LDNWebPerf Version)Stephen Thair
 
Velocity 2011 Feedback - architecture, statistics and SPDY
Velocity 2011 Feedback - architecture, statistics and SPDYVelocity 2011 Feedback - architecture, statistics and SPDY
Velocity 2011 Feedback - architecture, statistics and SPDYStephen Thair
 
Continuous Integration - A Performance Engineer's Tale
Continuous Integration - A Performance Engineer's TaleContinuous Integration - A Performance Engineer's Tale
Continuous Integration - A Performance Engineer's TaleStephen Thair
 
Web Performance Optimisation at times.co.uk
Web Performance Optimisation at times.co.ukWeb Performance Optimisation at times.co.uk
Web Performance Optimisation at times.co.ukStephen Thair
 
Practical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance SeminarPractical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance SeminarStephen Thair
 

Destacado (7)

London web performance WPO Lessons from the field June 2013
London web performance   WPO Lessons from the field June 2013London web performance   WPO Lessons from the field June 2013
London web performance WPO Lessons from the field June 2013
 
Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011
 
Measuring mobile performance (@LDNWebPerf Version)
Measuring mobile performance (@LDNWebPerf Version)Measuring mobile performance (@LDNWebPerf Version)
Measuring mobile performance (@LDNWebPerf Version)
 
Velocity 2011 Feedback - architecture, statistics and SPDY
Velocity 2011 Feedback - architecture, statistics and SPDYVelocity 2011 Feedback - architecture, statistics and SPDY
Velocity 2011 Feedback - architecture, statistics and SPDY
 
Continuous Integration - A Performance Engineer's Tale
Continuous Integration - A Performance Engineer's TaleContinuous Integration - A Performance Engineer's Tale
Continuous Integration - A Performance Engineer's Tale
 
Web Performance Optimisation at times.co.uk
Web Performance Optimisation at times.co.ukWeb Performance Optimisation at times.co.uk
Web Performance Optimisation at times.co.uk
 
Practical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance SeminarPractical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance Seminar
 

Similar a Is the current model of load testing broken ukcmg - steve thair

Senior Quality Analyst
Senior Quality AnalystSenior Quality Analyst
Senior Quality AnalystAnkur Gupta
 
Getting Started with Apache Jmeter
Getting Started with Apache JmeterGetting Started with Apache Jmeter
Getting Started with Apache JmeterMindfire Solutions
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?Michael Elder
 
Managing Application Performance: A Simplified Universal Approach
Managing Application Performance: A Simplified Universal ApproachManaging Application Performance: A Simplified Universal Approach
Managing Application Performance: A Simplified Universal ApproachTechWell
 
Continuous Delivery (Internet-Briefing 2012-04-03)
Continuous Delivery (Internet-Briefing 2012-04-03)Continuous Delivery (Internet-Briefing 2012-04-03)
Continuous Delivery (Internet-Briefing 2012-04-03)Netcetera
 
Performance Testing
Performance TestingPerformance Testing
Performance TestingCodelattice
 
The Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User AdvocacyThe Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User AdvocacyTechWell
 
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16AppDynamics
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow RecentFuture Simmons
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TFuture Simmons
 
Neotys PAC - Stijn Schepers
Neotys PAC - Stijn SchepersNeotys PAC - Stijn Schepers
Neotys PAC - Stijn SchepersNeotys_Partner
 
San Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker PresentationSan Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker PresentationClever Moe
 
Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Munirathnam Naidu
 
How to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeterHow to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeterInfluxData
 
Using LCDS to Power Live REAs
Using LCDS to Power Live REAsUsing LCDS to Power Live REAs
Using LCDS to Power Live REAsShailesh Mangal
 
IBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsIBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsSanjeev Sharma
 
Shuvam Dutta | Performance analyst
Shuvam Dutta | Performance analystShuvam Dutta | Performance analyst
Shuvam Dutta | Performance analystShuvam Dutta
 

Similar a Is the current model of load testing broken ukcmg - steve thair (20)

Senior Quality Analyst
Senior Quality AnalystSenior Quality Analyst
Senior Quality Analyst
 
Getting Started with Apache Jmeter
Getting Started with Apache JmeterGetting Started with Apache Jmeter
Getting Started with Apache Jmeter
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?
 
Perf Intro Ppt
Perf Intro PptPerf Intro Ppt
Perf Intro Ppt
 
Managing Application Performance: A Simplified Universal Approach
Managing Application Performance: A Simplified Universal ApproachManaging Application Performance: A Simplified Universal Approach
Managing Application Performance: A Simplified Universal Approach
 
Continuous Delivery (Internet-Briefing 2012-04-03)
Continuous Delivery (Internet-Briefing 2012-04-03)Continuous Delivery (Internet-Briefing 2012-04-03)
Continuous Delivery (Internet-Briefing 2012-04-03)
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
The Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User AdvocacyThe Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User Advocacy
 
Iqnite keynote
Iqnite keynoteIqnite keynote
Iqnite keynote
 
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow Recent
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N T
 
Neotys PAC - Stijn Schepers
Neotys PAC - Stijn SchepersNeotys PAC - Stijn Schepers
Neotys PAC - Stijn Schepers
 
San Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker PresentationSan Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker Presentation
 
Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]
 
How to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeterHow to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeter
 
Using LCDS to Power Live REAs
Using LCDS to Power Live REAsUsing LCDS to Power Live REAs
Using LCDS to Power Live REAs
 
IBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsIBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile Apps
 
Shuvam dutta
Shuvam duttaShuvam dutta
Shuvam dutta
 
Shuvam Dutta | Performance analyst
Shuvam Dutta | Performance analystShuvam Dutta | Performance analyst
Shuvam Dutta | Performance analyst
 

Más de Stephen Thair

7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...
7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...
7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...Stephen Thair
 
Measuring Mobile Web Performance v2
Measuring Mobile Web Performance v2Measuring Mobile Web Performance v2
Measuring Mobile Web Performance v2Stephen Thair
 
Web performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thairWeb performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thairStephen Thair
 
Performance automation 101 @LDNWebPerf MickMcGuinness
Performance automation 101 @LDNWebPerf MickMcGuinnessPerformance automation 101 @LDNWebPerf MickMcGuinness
Performance automation 101 @LDNWebPerf MickMcGuinnessStephen Thair
 
Performance testing automation with Dynatrace @LDNWebPerf - AndreasGrabner
Performance testing automation with Dynatrace  @LDNWebPerf - AndreasGrabnerPerformance testing automation with Dynatrace  @LDNWebPerf - AndreasGrabner
Performance testing automation with Dynatrace @LDNWebPerf - AndreasGrabnerStephen Thair
 
Seatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudySeatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudyStephen Thair
 
Configuration Management - The Operations Managers View
Configuration Management - The Operations Managers ViewConfiguration Management - The Operations Managers View
Configuration Management - The Operations Managers ViewStephen Thair
 
Test Expo 2009 Site Confidence & Seriti Consulting Load Test Case Study
Test Expo 2009   Site Confidence & Seriti Consulting   Load Test Case StudyTest Expo 2009   Site Confidence & Seriti Consulting   Load Test Case Study
Test Expo 2009 Site Confidence & Seriti Consulting Load Test Case StudyStephen Thair
 

Más de Stephen Thair (9)

7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...
7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...
7 lessons from velocity 2011 (Meetup feedback session for London Web Performa...
 
Measuring Mobile Web Performance v2
Measuring Mobile Web Performance v2Measuring Mobile Web Performance v2
Measuring Mobile Web Performance v2
 
Web performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thairWeb performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thair
 
Performance automation 101 @LDNWebPerf MickMcGuinness
Performance automation 101 @LDNWebPerf MickMcGuinnessPerformance automation 101 @LDNWebPerf MickMcGuinness
Performance automation 101 @LDNWebPerf MickMcGuinness
 
Performance testing automation with Dynatrace @LDNWebPerf - AndreasGrabner
Performance testing automation with Dynatrace  @LDNWebPerf - AndreasGrabnerPerformance testing automation with Dynatrace  @LDNWebPerf - AndreasGrabner
Performance testing automation with Dynatrace @LDNWebPerf - AndreasGrabner
 
Web performance 101
Web performance 101Web performance 101
Web performance 101
 
Seatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudySeatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case Study
 
Configuration Management - The Operations Managers View
Configuration Management - The Operations Managers ViewConfiguration Management - The Operations Managers View
Configuration Management - The Operations Managers View
 
Test Expo 2009 Site Confidence & Seriti Consulting Load Test Case Study
Test Expo 2009   Site Confidence & Seriti Consulting   Load Test Case StudyTest Expo 2009   Site Confidence & Seriti Consulting   Load Test Case Study
Test Expo 2009 Site Confidence & Seriti Consulting Load Test Case Study
 

Is the current model of load testing broken ukcmg - steve thair

  • 1. Is the current model of load testing broken? Steve Thair Seriti Consulting @TheOpsMgr
  • 2. 2 Some background….  My User Group – Dec 2011 - http://www.meetup.com/London-Web-Performance-Group/ (c) Seriti Consulting, 2011
  • 3. Delivery Alert Deviation from Team normal? Ready Fail Fail to for Build meet Test? SLA’s? Deploy Measurements Environment Continuous End User Perf Trends Load Response Injection For Each Data Service/API Point Usage response Profile Production logs System Perf Details monitors http://www.slideshare.net/sthair/continuous-integration-a-performance-engineers-journey CONFIDENTIAL and not for reproduction without prior written consent. © of the Sporting Exchange Limited.
  • 4. 4 The Killer Comment… “We’ve had to look at separating load injection from performance measurement”. - Andrew Harding, Betfair http://www.seriticonsulting.com/blog/2011 /12/9/is-the-current-model-of- loadperformance-testing-broken.html (c) Seriti Consulting, 2011 @TheOpsMgr #ukcmg #webperf
  • 5. So why are you paying all 5 that money for that What are key expensive brand-name reasons behind load testing tool then? that decision? Surely there are open source or cheap cloud tools if all you want is load? What other issues might we have with What are you “traditional” load using to measure testing models Performance in a Web 2.0 then? world? @TheOpsMgr #ukcmg #webperf
  • 6. 6 Defining the “current model” “Stephen didn’t explicitly define what the current model of load/performance testing is…”  Alex Podelko http://applicationperformanceengineeringhub.com/is-the-current-model- of-loadperformance-testing-broken/ @TheOpsMgr #ukcmg #webperf
  • 7. 7 “Current Model Straw Man” (1) Waterfall Development Cycle (2) Load Tool compiles the report (3) Reporting at the end of the test (4) Request / Response paradigm (5) Well-defined customer journeys (c) Seriti Consulting, 2011
  • 8. 8 Testing in a CI/Agile world  Performance testing initiated every time code is committed to the CM repository (e.g. SVN, GIT etc)  Betfair issue was that their system was complex with many layers of caching etc so it took longer to “warm up” the environment (to achieve a steady performance state) than they had between check-ins…  So they needed “continuous injection” to keep the environment constantly warm…  The test tool never “stopped” to “compile the report”…  So any tool that “reported at the end” wasn’t as useful… @TheOpsMgr #ukcmg #webperf
  • 9. 9 Test tools in a APM & RUM world  “traditional test tools” generally have the ability to deploy agents to gather metrics from the target environment  But the depth of analysis and correlation falls well below that of modern Application Performance Management tools e.g. AppDynamics  APM tools offer a deeper insight and better event correlation across tiers…  And they are getting (much) cheaper… @TheOpsMgr #ukcmg #webperf
  • 10. APM Measurement @TheOpsMgr #ukcmg #webperf
  • 11. Google Real Time Analytics @TheOpsMgr #ukcmg #webperf
  • 12. 12 WebSockets  HTTP 1.1  Start Timer  GET /index.html  Response 200 OK  Stop Timer  WebSockets  Start Timer  Socket “upgrade”  N many frames…  Stop??? Bi-directional socket channel @TheOpsMgr #ukcmg #webperf
  • 13. 13 HTTP 2.0  HTTP 1.1  Sequential  ordered  HTTP 2.0 (& SPDY)  Multiplexed over a single connection  Responses returned out of sequence…  Hard to time! http://stackoverflow.com/questions/10480122/difference-between-http-pipeling-and-http-multiplexing-with-spdy @TheOpsMgr #ukcmg #webperf
  • 14. 14 Website Complexity  263,000 entry points… @TheOpsMgr #ukcmg #webperf
  • 15. 15 Visitor Flow  How many paths thru a website?  Classic script-driven approaches can’t hope to address the complexity  Network and log file replay solutions? @TheOpsMgr #ukcmg #webperf
  • 16. 16 A PCAP Solution to Replay?  POC solution based on Cloudmeter Pion + custom scripts  Read a PCAP (network capture)  Identify the HTTP traffic  Filter it (based on your requirements)  Parameterise it (query strings, POST parameters etc)  Randomise inputs from SQL, CSV etc  Replay it against a test environment  i.e. change the base URL  Amplify & rate throttle req/sec as required http://www.cloudmeter.com/pion/data-processing.php @TheOpsMgr #ukcmg #webperf
  • 17. 17 Personal Opinion! YMMV… So what’s the Answer?  Use the cheapest method to generate load that you can find…  Move away from scripting-based approaches towards using real-user session replay (if possible!)  Generate load continuously  Measure continuously  using APM & RUM type tools – FOSS or Commercial  Look for changes in histograms, averages, standard dev etc  Protocol and Framework aware instrumentation  AFAIK this currently doesn’t exist… @TheOpsMgr #ukcmg #webperf
  • 18. 18 @LDNWebPerf User Group!  Join our London Web Performance Meetup  http://www.meetup.com/London-Web-Performance-Group/  Next Wednesday 17th Oct – 7pm – Central London  Follow us on Twitter @LDNWebPerf  #LDNWebPerf & #WebPerf (c) Seriti Consulting, 2011 @TheOpsMgr #ukcmg #webperf
  • 19. 19 About Me  21yrs IT experience.  Started with www in 1998 (IIS3! Site Server 3!).  Web Architect @ BNP Paribas, CSFB etc  Web Operations Manager for www.totaljobs.com, www.tes.co.uk  Professional Services Manager @ www.siteconfidence.com  Seriti Consulting – specialising in web operations, management and Performance  e:stephen.thair@seriticonsulting.com  m:+44 7971 815 940  Twitter: http://twitter.com/TheOpsMgr  Blog: http://www.seriticonsulting.com/blog/  LinkedIn: http://uk.linkedin.com/in/stephenthair  Skype: seriti-steve (c) Seriti Consulting, 2011 @TheOpsMgr #ukcmg #webperf
  • 20. 20 Questions? (c) Seriti Consulting, 2011 @TheOpsMgr #ukcmg #webperf

Notas del editor

  1. Thanks for coming to my talk… I know it must have been hard to tear yourself away from all about “Workload License charges in IBM System Z” so I appreciate your trust! We have lot of really interesting stuff to talk about…You will get a lot of food for thought and I will confess right now that I don’t know all the answers to this as yet, but hopefully we might find some out along the way!
  2. I run a monthly Meetup group on Web Performance… and back in December 2011 we had a presentation from the Performance team at Betfair about performance testing in their continuous integration environment.
  3. And they presented an environment like this…
  4. So I am like what, huh, that’s that? You separated load injection from performance measurement? Doesn’t that sort of destroy half the value proposition of the all those expensive load testing tools? Why did you do that?How are you measuring it then? And then all sorts of other issues came out of that…
  5. So I had all these questions in my head… but before I get to that I need to address Alex Podelko’s objection raised in a comment on my blog…
  6. True, I didn’t…. So say hello to my little friend… the Straw Man!
  7. How do you get “results” when the testing never “stops”…
  8. APM tools offer more insight…. I mean, that’s what they are designed to do so it’s hardly a surprise. So increasing in my load testing I search
  9. Some RUM tools are even free – like Google SiteSpeedSo why do I need expensive load tools if I all I am doing is measuring load?
  10. WebSockets is a new HTML 5 API protocol for bi-directional real-time communication between browser (client) and server.But the key here is that there isn’t a nice request/response “round-trip” any more – the very thing that most of the current generation of test tools rely on (especially the HTTP 1.1 level protocol tools like JmeterAnd in a HTTP 2.0 world it gets even worse… because you have HTTP channel multiplexing…
  11. Websites are getting more and more complex… especially as we add in new functionality like AJAX and HTML5 I have been playing with a solution
  12. I created a proof of concept
  13. DB2 was the reason I moved into local area networking…