SlideShare a Scribd company logo
Optimisation Case Study


           January 2011
     Ged Waring & Perry Dyball
Headline Results of Project

  • Reduced HTTP Requests by 30%

  • Reduced Page Load time by between 50% and 70%

  • Reduced Page Size by between 22% and 33%

  • Reduced Hard Bandwidth requirements by 43%

  • Reduced DB CPU requirements by 75%

  • Increased Concurrent Users ceiling by 300%


CONFIDENTIAL DRAFT
Presentation Outline

  • Origins of Problem

  • Why Optimise?

  • Project Constraints and Approach

  • Measurement Techniques & Tools

  • Project Steps

  • Wrap Up / Challenges


CONFIDENTIAL DRAFT
Origins of Problem

  • Frequent releases with poor measurement and
    testing

  • Speed to market versus slower engineering process

  • Problem compounds & worsens over time

  • No single culprit – all tiers of the platform

  • Did the problem harm our business?
        • In the short-to-medium term – almost certainly not.
        • In the medium-to-longer term – yes.

CONFIDENTIAL DRAFT
Why Optimise?

  • User Experience / Conversion / Retention

  • Increased capacity to serve customers

  • Google/SEO

  • Return on investment

  • Hard bandwidth ceiling and DB Server capacity

  • Handle large traffic spikes


CONFIDENTIAL DRAFT
Constraints

  • No additional hardware spend

  • Continual product / feature development




CONFIDENTIAL DRAFT
Project Approach

  • Path of least resistance

  • Iterative – Change / Measure / Report / Repeat

  • Phase 1 – Fairly Easy
        • Infrastructure Configuration / Leverage Existing Resources
        • Client Side Optimization
        • CDN

  • Phase 2 - Harder
        • Database Optimisation
        • Middle Tier Refactoring / Caching

CONFIDENTIAL DRAFT
Project Approach
                       Business buy-in


                     Baseline performance


                        Make a single
                          change


        Adapt your plan                     Measure it



                          Analyse
                           results
CONFIDENTIAL DRAFT
Project Approach

  • Release Discreet Changes
        • Script & run tests
        • Record metrics
        • Collate results
        • Report & analyse
        • Repeat

  • Minimise Other Environment Variables / Changes
        • Time of day
        • Hardware / Network changes
        • Skewed traffic (Ad. campaigns / Extraordinary spikes)



CONFIDENTIAL DRAFT
Tools we used

  • HttpWatch Professional (Object Library)
  • WebPageTest.org
  • Y-Slow / Firebug / Fiddler
  • Site Confidence Monitoring Portal

  • IDERA (DB Monitoring)

  • SQL Profiling (Server Side)
  • SQL Reporting Services

  • F5 Load Balancing Consultants – Quadrant Networks
  Note : In our case the new Site Confidence Performance Analyser tool
         has replaced HTTP Watch / WebPageTest / Y-Slow
CONFIDENTIAL DRAFT
Phase 1 : Client Side / Page Optimisation

  • Areas yielding highest benefit
        • Compression (check your configuration)
        • Compression moved from IIS to F5 Load Balancer
        • Object caching at F5 Load Balancer
        • Reduction in HTTP Requests / Spriting / File Consolidation
        • Image size consistency
        • Removal of third party killers (Images/JS)
        • Parallelism (CDN)




CONFIDENTIAL DRAFT
Client Side / Page Optimization Results

                               Home Page Load Time (ms) (2mbps download speed)                   Empty Cache          Primed Cache
             Baseline                                                                                      4,435              3,279
             P10 F5 Optimisation                                                                           4,145              3,123
             P20 10 March (Ptix, Concat)                                                                   4,608              2,781
             P30 24 March (Spriting and Verisign)                                                          1,804              1,177
             P40 24 March (Parallelism)                                                                    1,839              1,084
             R50 21st April Release                                                                        1,393               824


                                                                    Home Page Load Times (ms)
                                                                         (source: HttpWatch)


                                5000
                                4500
                                4000
              Load time (ms)




                                3500
                                3000
                                2500
                                2000
                                1500                                                                                         Empty
                                1000
                                 500                                                                                         Primed
                                   0
                                       P01 Baseline      P10 F5      P20 10        P30 24        P40 24       R50 21st
                                                      Optimisation March (Ptix,    March         March      April Release
                                                                    Concat)     (Spriting and (Parallelism)
                                                                                  Verisign)
                                                                        Optimisation Phase




CONFIDENTIAL DRAFT
Client Side / Page Optimization Results

                                                                                                                                                               Grand
                    Http Requests by Mime                        *        css          flash        html        image       javascript      redirect           Total

 01 Baseline                                                    1               4              1           1         37            13              3                60
 02 Post F5 Optimisation                                        1               4              1           1         37            13              3                60
 03 Page Optimisation 10 March (Ptix, Concat)                   1               4              1           1         37            12              3                59
 04 Page Optimisation 25 March (Spriting and Verisign)          1               4              1           1         23            12              3                45
 04 Parallelism 25th March                                      -               4              1           1         21            11                               38
 05 Release 21st April                                                          4                          1         22            10                               37

                                                                            Season Page
                                                                     HttpRequests by Phase/Mime


               70

               60

               50                                                                                                                                      redirect

               40                                                                                                                                      javascript
                                                                                                                                                       image
               30
                                                                                                                                                       html
               20                                                                                                                                      flash

               10                                                                                                                                      css
                                                                                                                                                       *
                0
                         01 Baseline         02 Post F5        03 Page               04 Page        04 Parallelism 25th   05 Release 21st
                                            Optimisation   Optimisation 10       Optimisation 25          March                April
                                                            March (Ptix,        March (Spriting and
                                                               Concat)              Verisign)



CONFIDENTIAL DRAFT
Client Side / Page Optimisation Results




CONFIDENTIAL DRAFT
Client Side / Page Optimisation Results




                     Page load performance
                       both improved and
                     became more consistent




CONFIDENTIAL DRAFT
Phase 1 : Results

   • Page load performance
         • Page load times reduced by between 38% and 60%
         • Bandwidth requirements reduced by 18%

   • How long did it take?
         • 4 months elapsed.
         • Work completed alongside normal product development




CONFIDENTIAL DRAFT
CDN Evaluation Overview




  Load time drop Monday to Wednesday when test speed increased from 512kbps to 2mbps

CONFIDENTIAL DRAFT
Phase 2 : What did we do?

  • Database
        • Analyse web page db interaction
        • Repeated tracing of all db calls
        • Reports on worst performing aspects of the db
        • Computing DB CPU per user session

  • F5 Load Balancing
        • Upgrade internal network layer configuration to 1Gbps
        • Upgrade F5 O/S to V10.2
        • F5 traffic management rules / log

  • CDN
        • Non image assets – JS / CSS serve from CDN
CONFIDENTIAL DRAFT
Phase 2 – Why did we do it?

    • Identify and remove redundant db calls from web code

    • Identify data that was a candidate for caching

    • Identify which site features were resource hungry

    • Save more bandwidth
    • Control traffic at the F5 in
      real time

        Overflow traffic redirected
        and managed in a cloud
        based queuing system


CONFIDENTIAL DRAFT
Effect on DB Resource Usage




CONFIDENTIAL DRAFT
Phase 2 Achievements

 • Benefits
       • Capacity increased from 2,100 to 6,300 concurrent users
       • 8.3m sessions in October 2010 on 8 web servers
       • Queuing capability for another 4,000 concurrent users
       • DB resource use reduced by 75%
       • Reduce bandwidth demands by further 25%
       • Reduce internal network traffic
 • Financial Benefit
       • Single biggest return this year
 • How long did it take?
       • 3 months elapsed
       • Work completed alongside normal product development
CONFIDENTIAL DRAFT
Normal Traffic Pattern




CONFIDENTIAL DRAFT
Major On-Sale Traffic Pattern




                                   Traffic spike sustained for long period.
                                   Gradual inflow of traffic from queuing
                                   system until queue expired



CONFIDENTIAL DRAFT
TV Advertising Traffic Pattern




                                    Note 3rd / 4th ad break spikes when we
                                    didn’t run ads




CONFIDENTIAL DRAFT
Wrap Up

   • It’s hard work

   • You need to do it repeatedly

   • You need to be consistent

   • It will generate large amounts of data

   • Use automation wherever possible

   • Expect unanticipated bottlenecks / pinch points

   • Bake optimisation into the release process

   • It will yield material benefits
CONFIDENTIAL DRAFT

More Related Content

What's hot

Performance Implications of Mobile Design
Performance Implications of Mobile DesignPerformance Implications of Mobile Design
Performance Implications of Mobile Design
Guy Podjarny
 
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Peter Moskovits
 
Belgrade when its just too slow
Belgrade when its just too slowBelgrade when its just too slow
Belgrade when its just too slow
Doug Sillars
 
Zend Server: A Guided Tour
Zend Server: A Guided TourZend Server: A Guided Tour
Zend Server: A Guided Tour
Shahar Evron
 
Velocity 2012: The 90-Minute Mobile Optimization Life Cycle
Velocity 2012: The 90-Minute Mobile Optimization Life CycleVelocity 2012: The 90-Minute Mobile Optimization Life Cycle
Velocity 2012: The 90-Minute Mobile Optimization Life Cycle
Strangeloop
 
Tiery Eyed
Tiery EyedTiery Eyed
Tiery Eyed
ZendCon
 
High Performance Mobile Web
High Performance Mobile WebHigh Performance Mobile Web
High Performance Mobile Web
James D Bloom
 
Front End Performance
Front End PerformanceFront End Performance
Front End Performance
Konstantin Käfer
 
Building Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSocketsBuilding Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSockets
Peter Moskovits
 
Front end performance tip
Front end performance tipFront end performance tip
Front end performance tip
Steve Yu
 
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
Peter Lubbers
 
AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...
AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...
AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...
panagenda
 
Front end performance optimization
Front end performance optimizationFront end performance optimization
Front end performance optimization
Stevie T
 
soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5
soft-shake.ch
 
2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire
Marko Mitranić
 
Quantifying The Mobile Difference
Quantifying The Mobile DifferenceQuantifying The Mobile Difference
Quantifying The Mobile Difference
Guy Podjarny
 
Magento Performance Optimization 101
Magento Performance Optimization 101Magento Performance Optimization 101
Magento Performance Optimization 101
Angus Li
 
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站
areyouok
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Arun Gupta
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSockets
Gunnar Hillert
 

What's hot (20)

Performance Implications of Mobile Design
Performance Implications of Mobile DesignPerformance Implications of Mobile Design
Performance Implications of Mobile Design
 
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
 
Belgrade when its just too slow
Belgrade when its just too slowBelgrade when its just too slow
Belgrade when its just too slow
 
Zend Server: A Guided Tour
Zend Server: A Guided TourZend Server: A Guided Tour
Zend Server: A Guided Tour
 
Velocity 2012: The 90-Minute Mobile Optimization Life Cycle
Velocity 2012: The 90-Minute Mobile Optimization Life CycleVelocity 2012: The 90-Minute Mobile Optimization Life Cycle
Velocity 2012: The 90-Minute Mobile Optimization Life Cycle
 
Tiery Eyed
Tiery EyedTiery Eyed
Tiery Eyed
 
High Performance Mobile Web
High Performance Mobile WebHigh Performance Mobile Web
High Performance Mobile Web
 
Front End Performance
Front End PerformanceFront End Performance
Front End Performance
 
Building Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSocketsBuilding Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSockets
 
Front end performance tip
Front end performance tipFront end performance tip
Front end performance tip
 
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
 
AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...
AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...
AD1387: Outside The Box: Integrating with Non-Domino Apps using XPages and Ja...
 
Front end performance optimization
Front end performance optimizationFront end performance optimization
Front end performance optimization
 
soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5
 
2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire
 
Quantifying The Mobile Difference
Quantifying The Mobile DifferenceQuantifying The Mobile Difference
Quantifying The Mobile Difference
 
Magento Performance Optimization 101
Magento Performance Optimization 101Magento Performance Optimization 101
Magento Performance Optimization 101
 
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSockets
 

Similar to Seatwave Web Peformance Optimisation Case Study

Big Science, Big Data: Simon Metson at Eduserv Symposium 2012
Big Science, Big Data: Simon Metson at Eduserv Symposium 2012Big Science, Big Data: Simon Metson at Eduserv Symposium 2012
Big Science, Big Data: Simon Metson at Eduserv Symposium 2012
Eduserv
 
Fachseminar Wcms 2008 Day
Fachseminar Wcms 2008 DayFachseminar Wcms 2008 Day
Fachseminar Wcms 2008 Day
David Nuescheler
 
Gic2011 aula3-ingles
Gic2011 aula3-inglesGic2011 aula3-ingles
Gic2011 aula3-ingles
Marielba-Mayeya Zacarias
 
Gic2011 aula3-ingles
Gic2011 aula3-inglesGic2011 aula3-ingles
Gic2011 aula3-ingles
Marielba-Mayeya Zacarias
 
Masahiro Yoshizaki
Masahiro YoshizakiMasahiro Yoshizaki
Masahiro Yoshizaki
globalforum11
 
Sql 2008 and project server 2010
Sql 2008 and project server 2010Sql 2008 and project server 2010
Sql 2008 and project server 2010
Eduardo Castro
 
NIG 系統開發指引
NIG 系統開發指引NIG 系統開發指引
NIG 系統開發指引
Guo Albert
 
Optimizing Oracle licensing in VMware environments
Optimizing Oracle licensing in VMware environments Optimizing Oracle licensing in VMware environments
Optimizing Oracle licensing in VMware environments
iQuate
 
Ed Mathias May 6th
Ed Mathias   May 6thEd Mathias   May 6th
Ed Mathias May 6th
edmathias
 
JIRA Enterprise Webinar - 15 Aug 2012
JIRA Enterprise Webinar - 15 Aug 2012JIRA Enterprise Webinar - 15 Aug 2012
JIRA Enterprise Webinar - 15 Aug 2012
Atlassian
 
Rail Performance in the Cloud - Opening
Rail Performance in the Cloud - OpeningRail Performance in the Cloud - Opening
Rail Performance in the Cloud - Opening
Engine Yard
 
Metrics-Based Process Mapping: What, When & How
Metrics-Based Process Mapping: What, When & HowMetrics-Based Process Mapping: What, When & How
Metrics-Based Process Mapping: What, When & How
TKMG, Inc.
 
IT Strategy : Communication & Challenges
IT Strategy : Communication & ChallengesIT Strategy : Communication & Challenges
IT Strategy : Communication & Challenges
hblowers
 
Rietta Business Intelligence for the MicroISV
Rietta Business Intelligence for the MicroISVRietta Business Intelligence for the MicroISV
Rietta Business Intelligence for the MicroISV
Frank Rietta
 
IAITAM Webinar: How to Optimize Oracle licensing in VMware environments
IAITAM Webinar: How to Optimize Oracle licensing in VMware environments IAITAM Webinar: How to Optimize Oracle licensing in VMware environments
IAITAM Webinar: How to Optimize Oracle licensing in VMware environments
iQuate
 
LinkedIn-Teradata Summit feb 25, 2015
LinkedIn-Teradata Summit feb 25, 2015LinkedIn-Teradata Summit feb 25, 2015
LinkedIn-Teradata Summit feb 25, 2015
Navina Ramesh
 
Intel Cloud Summit: Welcome Address - Jason Fedder
Intel Cloud Summit: Welcome Address - Jason FedderIntel Cloud Summit: Welcome Address - Jason Fedder
Intel Cloud Summit: Welcome Address - Jason Fedder
IntelAPAC
 
Virt Exchange2k7 Final Frontier V Mworld2007
Virt Exchange2k7 Final Frontier V Mworld2007Virt Exchange2k7 Final Frontier V Mworld2007
Virt Exchange2k7 Final Frontier V Mworld2007
Kong Yang
 
Zeebe - a Microservice Orchestration Engine
Zeebe - a Microservice Orchestration Engine Zeebe - a Microservice Orchestration Engine
Zeebe - a Microservice Orchestration Engine
camunda services GmbH
 
Tim Jones – CTO, Trader Media
Tim Jones – CTO, Trader MediaTim Jones – CTO, Trader Media
Tim Jones – CTO, Trader Media
RightScale
 

Similar to Seatwave Web Peformance Optimisation Case Study (20)

Big Science, Big Data: Simon Metson at Eduserv Symposium 2012
Big Science, Big Data: Simon Metson at Eduserv Symposium 2012Big Science, Big Data: Simon Metson at Eduserv Symposium 2012
Big Science, Big Data: Simon Metson at Eduserv Symposium 2012
 
Fachseminar Wcms 2008 Day
Fachseminar Wcms 2008 DayFachseminar Wcms 2008 Day
Fachseminar Wcms 2008 Day
 
Gic2011 aula3-ingles
Gic2011 aula3-inglesGic2011 aula3-ingles
Gic2011 aula3-ingles
 
Gic2011 aula3-ingles
Gic2011 aula3-inglesGic2011 aula3-ingles
Gic2011 aula3-ingles
 
Masahiro Yoshizaki
Masahiro YoshizakiMasahiro Yoshizaki
Masahiro Yoshizaki
 
Sql 2008 and project server 2010
Sql 2008 and project server 2010Sql 2008 and project server 2010
Sql 2008 and project server 2010
 
NIG 系統開發指引
NIG 系統開發指引NIG 系統開發指引
NIG 系統開發指引
 
Optimizing Oracle licensing in VMware environments
Optimizing Oracle licensing in VMware environments Optimizing Oracle licensing in VMware environments
Optimizing Oracle licensing in VMware environments
 
Ed Mathias May 6th
Ed Mathias   May 6thEd Mathias   May 6th
Ed Mathias May 6th
 
JIRA Enterprise Webinar - 15 Aug 2012
JIRA Enterprise Webinar - 15 Aug 2012JIRA Enterprise Webinar - 15 Aug 2012
JIRA Enterprise Webinar - 15 Aug 2012
 
Rail Performance in the Cloud - Opening
Rail Performance in the Cloud - OpeningRail Performance in the Cloud - Opening
Rail Performance in the Cloud - Opening
 
Metrics-Based Process Mapping: What, When & How
Metrics-Based Process Mapping: What, When & HowMetrics-Based Process Mapping: What, When & How
Metrics-Based Process Mapping: What, When & How
 
IT Strategy : Communication & Challenges
IT Strategy : Communication & ChallengesIT Strategy : Communication & Challenges
IT Strategy : Communication & Challenges
 
Rietta Business Intelligence for the MicroISV
Rietta Business Intelligence for the MicroISVRietta Business Intelligence for the MicroISV
Rietta Business Intelligence for the MicroISV
 
IAITAM Webinar: How to Optimize Oracle licensing in VMware environments
IAITAM Webinar: How to Optimize Oracle licensing in VMware environments IAITAM Webinar: How to Optimize Oracle licensing in VMware environments
IAITAM Webinar: How to Optimize Oracle licensing in VMware environments
 
LinkedIn-Teradata Summit feb 25, 2015
LinkedIn-Teradata Summit feb 25, 2015LinkedIn-Teradata Summit feb 25, 2015
LinkedIn-Teradata Summit feb 25, 2015
 
Intel Cloud Summit: Welcome Address - Jason Fedder
Intel Cloud Summit: Welcome Address - Jason FedderIntel Cloud Summit: Welcome Address - Jason Fedder
Intel Cloud Summit: Welcome Address - Jason Fedder
 
Virt Exchange2k7 Final Frontier V Mworld2007
Virt Exchange2k7 Final Frontier V Mworld2007Virt Exchange2k7 Final Frontier V Mworld2007
Virt Exchange2k7 Final Frontier V Mworld2007
 
Zeebe - a Microservice Orchestration Engine
Zeebe - a Microservice Orchestration Engine Zeebe - a Microservice Orchestration Engine
Zeebe - a Microservice Orchestration Engine
 
Tim Jones – CTO, Trader Media
Tim Jones – CTO, Trader MediaTim Jones – CTO, Trader Media
Tim Jones – CTO, Trader Media
 

More from Stephen Thair

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
Stephen Thair
 
Is the current model of load testing broken ukcmg - steve thair
Is the current model of load testing broken   ukcmg - steve thairIs the current model of load testing broken   ukcmg - steve thair
Is the current model of load testing broken ukcmg - steve thair
Stephen 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 Tale
Stephen 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.uk
Stephen Thair
 
Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011
Stephen 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 Seminar
Stephen 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 SPDY
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 v2
Stephen 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 thair
Stephen 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 - AndreasGrabner
Stephen Thair
 
Web performance 101
Web performance 101Web performance 101
Web performance 101
Stephen Thair
 
Configuration Management - The Operations Managers View
Configuration Management - The Operations Managers ViewConfiguration Management - The Operations Managers View
Configuration Management - The Operations Managers View
Stephen 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 Study
Stephen Thair
 

More from Stephen Thair (15)

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
 
Is the current model of load testing broken ukcmg - steve thair
Is the current model of load testing broken   ukcmg - steve thairIs the current model of load testing broken   ukcmg - steve thair
Is the current model of load testing broken ukcmg - steve 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 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
 
Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011Measuring web performance. Velocity EU 2011
Measuring web performance. Velocity EU 2011
 
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
 
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
 
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 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
 
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
 

Recently uploaded

The basics of sentences session 7pptx.pptx
The basics of sentences session 7pptx.pptxThe basics of sentences session 7pptx.pptx
The basics of sentences session 7pptx.pptx
heathfieldcps1
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
giancarloi8888
 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
zuzanka
 
Chapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptxChapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptx
Denish Jangid
 
How to Predict Vendor Bill Product in Odoo 17
How to Predict Vendor Bill Product in Odoo 17How to Predict Vendor Bill Product in Odoo 17
How to Predict Vendor Bill Product in Odoo 17
Celine George
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
siemaillard
 
Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)
nitinpv4ai
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
Jyoti Chand
 
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdfمصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
سمير بسيوني
 
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
Nguyen Thanh Tu Collection
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
Nguyen Thanh Tu Collection
 
Educational Technology in the Health Sciences
Educational Technology in the Health SciencesEducational Technology in the Health Sciences
Educational Technology in the Health Sciences
Iris Thiele Isip-Tan
 
Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.
IsmaelVazquez38
 
Bonku-Babus-Friend by Sathyajith Ray (9)
Bonku-Babus-Friend by Sathyajith Ray  (9)Bonku-Babus-Friend by Sathyajith Ray  (9)
Bonku-Babus-Friend by Sathyajith Ray (9)
nitinpv4ai
 
How Barcodes Can Be Leveraged Within Odoo 17
How Barcodes Can Be Leveraged Within Odoo 17How Barcodes Can Be Leveraged Within Odoo 17
How Barcodes Can Be Leveraged Within Odoo 17
Celine George
 
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
ImMuslim
 
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
National Information Standards Organization (NISO)
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
iammrhaywood
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
EduSkills OECD
 
Temple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation resultsTemple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation results
Krassimira Luka
 

Recently uploaded (20)

The basics of sentences session 7pptx.pptx
The basics of sentences session 7pptx.pptxThe basics of sentences session 7pptx.pptx
The basics of sentences session 7pptx.pptx
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
 
Chapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptxChapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptx
 
How to Predict Vendor Bill Product in Odoo 17
How to Predict Vendor Bill Product in Odoo 17How to Predict Vendor Bill Product in Odoo 17
How to Predict Vendor Bill Product in Odoo 17
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
 
Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
 
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdfمصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
 
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
 
Educational Technology in the Health Sciences
Educational Technology in the Health SciencesEducational Technology in the Health Sciences
Educational Technology in the Health Sciences
 
Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.
 
Bonku-Babus-Friend by Sathyajith Ray (9)
Bonku-Babus-Friend by Sathyajith Ray  (9)Bonku-Babus-Friend by Sathyajith Ray  (9)
Bonku-Babus-Friend by Sathyajith Ray (9)
 
How Barcodes Can Be Leveraged Within Odoo 17
How Barcodes Can Be Leveraged Within Odoo 17How Barcodes Can Be Leveraged Within Odoo 17
How Barcodes Can Be Leveraged Within Odoo 17
 
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
 
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
 
Temple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation resultsTemple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation results
 

Seatwave Web Peformance Optimisation Case Study

  • 1. Optimisation Case Study January 2011 Ged Waring & Perry Dyball
  • 2. Headline Results of Project • Reduced HTTP Requests by 30% • Reduced Page Load time by between 50% and 70% • Reduced Page Size by between 22% and 33% • Reduced Hard Bandwidth requirements by 43% • Reduced DB CPU requirements by 75% • Increased Concurrent Users ceiling by 300% CONFIDENTIAL DRAFT
  • 3. Presentation Outline • Origins of Problem • Why Optimise? • Project Constraints and Approach • Measurement Techniques & Tools • Project Steps • Wrap Up / Challenges CONFIDENTIAL DRAFT
  • 4. Origins of Problem • Frequent releases with poor measurement and testing • Speed to market versus slower engineering process • Problem compounds & worsens over time • No single culprit – all tiers of the platform • Did the problem harm our business? • In the short-to-medium term – almost certainly not. • In the medium-to-longer term – yes. CONFIDENTIAL DRAFT
  • 5. Why Optimise? • User Experience / Conversion / Retention • Increased capacity to serve customers • Google/SEO • Return on investment • Hard bandwidth ceiling and DB Server capacity • Handle large traffic spikes CONFIDENTIAL DRAFT
  • 6. Constraints • No additional hardware spend • Continual product / feature development CONFIDENTIAL DRAFT
  • 7. Project Approach • Path of least resistance • Iterative – Change / Measure / Report / Repeat • Phase 1 – Fairly Easy • Infrastructure Configuration / Leverage Existing Resources • Client Side Optimization • CDN • Phase 2 - Harder • Database Optimisation • Middle Tier Refactoring / Caching CONFIDENTIAL DRAFT
  • 8. Project Approach Business buy-in Baseline performance Make a single change Adapt your plan Measure it Analyse results CONFIDENTIAL DRAFT
  • 9. Project Approach • Release Discreet Changes • Script & run tests • Record metrics • Collate results • Report & analyse • Repeat • Minimise Other Environment Variables / Changes • Time of day • Hardware / Network changes • Skewed traffic (Ad. campaigns / Extraordinary spikes) CONFIDENTIAL DRAFT
  • 10. Tools we used • HttpWatch Professional (Object Library) • WebPageTest.org • Y-Slow / Firebug / Fiddler • Site Confidence Monitoring Portal • IDERA (DB Monitoring) • SQL Profiling (Server Side) • SQL Reporting Services • F5 Load Balancing Consultants – Quadrant Networks Note : In our case the new Site Confidence Performance Analyser tool has replaced HTTP Watch / WebPageTest / Y-Slow CONFIDENTIAL DRAFT
  • 11. Phase 1 : Client Side / Page Optimisation • Areas yielding highest benefit • Compression (check your configuration) • Compression moved from IIS to F5 Load Balancer • Object caching at F5 Load Balancer • Reduction in HTTP Requests / Spriting / File Consolidation • Image size consistency • Removal of third party killers (Images/JS) • Parallelism (CDN) CONFIDENTIAL DRAFT
  • 12. Client Side / Page Optimization Results Home Page Load Time (ms) (2mbps download speed) Empty Cache Primed Cache Baseline 4,435 3,279 P10 F5 Optimisation 4,145 3,123 P20 10 March (Ptix, Concat) 4,608 2,781 P30 24 March (Spriting and Verisign) 1,804 1,177 P40 24 March (Parallelism) 1,839 1,084 R50 21st April Release 1,393 824 Home Page Load Times (ms) (source: HttpWatch) 5000 4500 4000 Load time (ms) 3500 3000 2500 2000 1500 Empty 1000 500 Primed 0 P01 Baseline P10 F5 P20 10 P30 24 P40 24 R50 21st Optimisation March (Ptix, March March April Release Concat) (Spriting and (Parallelism) Verisign) Optimisation Phase CONFIDENTIAL DRAFT
  • 13. Client Side / Page Optimization Results Grand Http Requests by Mime * css flash html image javascript redirect Total 01 Baseline 1 4 1 1 37 13 3 60 02 Post F5 Optimisation 1 4 1 1 37 13 3 60 03 Page Optimisation 10 March (Ptix, Concat) 1 4 1 1 37 12 3 59 04 Page Optimisation 25 March (Spriting and Verisign) 1 4 1 1 23 12 3 45 04 Parallelism 25th March - 4 1 1 21 11 38 05 Release 21st April 4 1 22 10 37 Season Page HttpRequests by Phase/Mime 70 60 50 redirect 40 javascript image 30 html 20 flash 10 css * 0 01 Baseline 02 Post F5 03 Page 04 Page 04 Parallelism 25th 05 Release 21st Optimisation Optimisation 10 Optimisation 25 March April March (Ptix, March (Spriting and Concat) Verisign) CONFIDENTIAL DRAFT
  • 14. Client Side / Page Optimisation Results CONFIDENTIAL DRAFT
  • 15. Client Side / Page Optimisation Results Page load performance both improved and became more consistent CONFIDENTIAL DRAFT
  • 16. Phase 1 : Results • Page load performance • Page load times reduced by between 38% and 60% • Bandwidth requirements reduced by 18% • How long did it take? • 4 months elapsed. • Work completed alongside normal product development CONFIDENTIAL DRAFT
  • 17. CDN Evaluation Overview Load time drop Monday to Wednesday when test speed increased from 512kbps to 2mbps CONFIDENTIAL DRAFT
  • 18. Phase 2 : What did we do? • Database • Analyse web page db interaction • Repeated tracing of all db calls • Reports on worst performing aspects of the db • Computing DB CPU per user session • F5 Load Balancing • Upgrade internal network layer configuration to 1Gbps • Upgrade F5 O/S to V10.2 • F5 traffic management rules / log • CDN • Non image assets – JS / CSS serve from CDN CONFIDENTIAL DRAFT
  • 19. Phase 2 – Why did we do it? • Identify and remove redundant db calls from web code • Identify data that was a candidate for caching • Identify which site features were resource hungry • Save more bandwidth • Control traffic at the F5 in real time Overflow traffic redirected and managed in a cloud based queuing system CONFIDENTIAL DRAFT
  • 20. Effect on DB Resource Usage CONFIDENTIAL DRAFT
  • 21. Phase 2 Achievements • Benefits • Capacity increased from 2,100 to 6,300 concurrent users • 8.3m sessions in October 2010 on 8 web servers • Queuing capability for another 4,000 concurrent users • DB resource use reduced by 75% • Reduce bandwidth demands by further 25% • Reduce internal network traffic • Financial Benefit • Single biggest return this year • How long did it take? • 3 months elapsed • Work completed alongside normal product development CONFIDENTIAL DRAFT
  • 23. Major On-Sale Traffic Pattern Traffic spike sustained for long period. Gradual inflow of traffic from queuing system until queue expired CONFIDENTIAL DRAFT
  • 24. TV Advertising Traffic Pattern Note 3rd / 4th ad break spikes when we didn’t run ads CONFIDENTIAL DRAFT
  • 25. Wrap Up • It’s hard work • You need to do it repeatedly • You need to be consistent • It will generate large amounts of data • Use automation wherever possible • Expect unanticipated bottlenecks / pinch points • Bake optimisation into the release process • It will yield material benefits CONFIDENTIAL DRAFT