SlideShare ist ein Scribd-Unternehmen logo
1 von 32
CloudOpsGuys Your Software | Our Service TM
1
CloudOpsGuys
Your Software | Our Service TM
WPO – Lessons from the Field
CloudOpsGuys Your Software | Our Service TM
(1) Some quick & dirty ways to do a WPO
PoC using automation
(2) 5 reasons why having your own
WebPageTest instance rocks!
(3) The most common WPO mistakes I see
(time and time again)
(4) Why I love APM tools and you're nuts if
you don't use one!
Agenda
3
CloudOpsGuys Your Software | Our Service TM
PoC - Do a quick example video
• There are two easy ways to get a rough
before/after web optimisation video
• Using WebPageTest Compare
– http://www.webpagetest.org/compare
• Use PageSpeedInsights
– https://developers.google.com/speed/pagespeed/in
sights
– (yes, I know one uses the other!)
CloudOpsGuys Your Software | Our Service TM
Pagespeed Insights
CloudOpsGuys Your Software | Our Service TM
And you can watch a video
https://developers.google.com/speed/pagespeed/insights#url=http_3A_2F_2Fwww.marksandspencer.com_2FFormal
-Shirts-Shirts-Mens_2Fb_2F2559784031_3Fie_3DUTF8_26intid_3Dgnav__men__formal-shirts&mobile=false
CloudOpsGuys Your Software | Our Service TM
WPT Compare
CloudOpsGuys Your Software | Our Service TM
Page Speed Service
CloudOpsGuys Your Software | Our Service TM
Build your own
• I’ve been building my own PoC tool using
Riverbed Stingray Aptimizer and aiCache.com
• Cache static and dynamic optimise resources
• Just use CNAMES and some header re-
writing to glue it together
Browser
aiCache
Dynamic
Stingray
Aptimizer
Origin
Server
CloudOpsGuys Your Software | Our Service TM
Some gotchas…
• Multiple levels of caching
– Browser cache
– aiCache
– Aptimizer cache (optimized static objects)
• Making sure that you send the right headers at each
“hop”
– Right user-agent
– Right hostname
– Right GZIP / Deflate headers…
• FQDN names in source (particularly in top/side nav)
– FFS what’s wrong with a relative /link?
CloudOpsGuys Your Software | Our Service TM
Other lessons
• Load time is useless
• Render start is useless
• Filmstrip, Video or “Visual Progress” is KEY
– More on this later…
CloudOpsGuys Your Software | Our Service TM
Video example
CloudOpsGuys Your Software | Our Service TM
5 reasons why WPT Private
instance rocks!
1. NO QUEUE!
2. Bulk Testing Mode
3. It’s private
4. It’s inside your firewall
5. Easier access to history of testing
6. You will learn more about features!
1. Visual Progress
2. Connection View
3. Scripting etc etc
CloudOpsGuys Your Software | Our Service TM
Bulk Testing!
CloudOpsGuys Your Software | Our Service TM
Give it a list of URL’s
CloudOpsGuys Your Software | Our Service TM
Visual Progress – KEY!
CloudOpsGuys Your Software | Our Service TM
Connection view
Relatively good…
CloudOpsGuys Your Software | Our Service TM
Connection view
Relatively bad… connection resets after 2 requests…
CloudOpsGuys Your Software | Our Service TM
LESSON LEARNT FROM
CONSULTING
What I see day in, day out…
CloudOpsGuys Your Software | Our Service TM
Lessons learnt from consulting…
20/06/2013 19
Generic Description
Reduce Page
Size
Reduce Number of
Requests
Implement
GZIP
Compression
Optimise
Loading of
external files
Defer
JavaScript
loading
Optimise
images
Optimize
HTTP Caching
Domain
Sharding
Cookie-
free
Domains
Back-end
performance
tuning
Remove
Unnecessary
CSS
High Street Retailer Yes Yes No No No No Yes No Yes No Yes
Budget Hotel Chain No Yes No No No Yes Yes Yes Yes Yes No
Professional Body No Yes Yes Yes Yes Yes Yes Yes No Yes No
High Street Retailer No Yes No Yes Yes Yes Yes Yes Yes Yes No
VOD provider No Yes No No Yes Yes Yes Yes Yes Yes Yes
Consumer Electronics Brand Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Fashion Retailer No Yes No No Yes Yes Yes No Yes Yes Yes
Travel Sector No Yes Yes Yes Yes no Yes Yes Yes Yes No
Fashion Retailer Yes Yes Yes Yes Yes No Yes Yes No Yes No
Fashion Retailer Yes Yes No No Yes No Yes Yes Yes Yes No
Home Improvement Retail No Yes No No Yes No Yes Yes Yes Yes Yes
Electrical Retailer Yes Yes no Yes Yes No Yes No Yes Yes No
Electrical Retailer Yes Yes No No Yes Yes Yes Yes No Yes No
Online Gambling Yes Yes Yes Yes No Yes Yes No Yes Yes Yes
Mobile Phone Retailer Yes Yes No Yes Yes Yes Yes Yes Yes No Yes
Insurance Provider No Yes No No Yes No Yes Yes No Yes Yes
Emergency Repair Service No Yes No Yes No Yes Yes Yes No Yes Yes
Mobile Phone Retailer Yes Yes No Yes Yes Yes Yes Yes No Yes Yes
Car Manufacturer No Yes No No No Yes Yes Yes Yes Yes Yes
Financial Services No Yes Yes No Yes No Yes Yes No Yes Yes
Travel Sector Yes Yes No No Yes No Yes Yes No No No
Publisher No Yes Yes No Yes Yes Yes Yes No No Yes
Publisher No Yes No No Yes No Yes Yes Yes No Yes
High Street Retailer Yes Yes No Yes Yes Yes Yes Yes No No Yes
Newspaper Yes Yes No Yes Yes Yes Yes No Yes Yes Yes
48% 100% 28% 48% 80% 60% 100% 80% 60% 76% 64%
CloudOpsGuys Your Software | Our Service TM20/06/2013 20
Performance Rule
Frequency
Recommended
Reduce Number of Requests 100%
Optimize HTTP Caching 100%
Defer JavaScript loading 80%
Domain Sharding 80%
-Back end performance tuning 76%
Remove Unnecessary CSS 64%
Optimise images 60%
-Cookie free Domains 60%
Reduce Page Size 48%
Optimise Loading of external
files
48%
Implement GZIP Compression 28%
CloudOpsGuys Your Software | Our Service TM
What else?
• It takes ages for anything to change
– (hence why I am focussing on automation stuff)
• Video’s are a killer tool
• Analysis of synthetic monitoring can tell you
an lot about back-end performance
• Use analogies (I wrote a whole whitepaper
using shopping at Tesco as an analogy for web
performance…)
CloudOpsGuys Your Software | Our Service TM
WHY I LOVE APM TOOLS…
Deeper insights into back-end performance…
CloudOpsGuys Your Software | Our Service TM
4 quick examples
• Know your dependencies!
– And don’t assume it’s your code that sucks…
• You can focus on application transactions
• How many transactions to load a page?
– And why ORM’s can suck…
• And classic Application metrics
– “The heap is doing WHAT?”
CloudOpsGuys Your Software | Our Service TM
Know your dependencies
CloudOpsGuys Your Software | Our Service TM
Focus on Application Transactions
CloudOpsGuys Your Software | Our Service TM
How many calls?
Query Avg. Time (ms) Count Tot.
Time
(ms)
%
Time
server=83.231.201.82;database=e6-goshcc;uid=e6-
goshcc;pwd=<snip>
0.26 1542 408 1.6
ESModule_EShop_SelectPrice 6.9 1216 8387 32.8
ESModule_EShop_SelectOrderItems 7.43 394 2929 11.5
ESCore_Lookup_Countries_Select 9.4 391 3676 14.4
ESModule_EShop_SelectAddress 10.15 285 2893 11.3
ESCore_Admin_LoadUserDetails 15.62 86 1343 5.3
ESModule_EShop_SelectOrderLineExtendedRecord 15.69 65 1020 4
ESCore_Data_GetNavigation 27.89 9 251 1
ESCore_Data_GetObjectDetails 3.44 9 31 0.1
ESCore_Data_IsObjectChildOfObject 0 8 0 0
CloudOpsGuys Your Software | Our Service TM
I think you have a memory leak
CloudOpsGuys Your Software | Our Service TM
Bonus question! Something unusual?
• GET /HTTP/1.1
• Host: www.cloudopsguys.com
• Connection: keep-alive
• Accept:
text/html,application/xhtml+xml,application/xml;q=0.
9,*/*;q=0.8
• User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64)
AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.110 Safari/537.36 PTST/101
• Accept-Encoding: gzip,deflate,sdch
• Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
CloudOpsGuys Your Software | Our Service TM
Bonus question! Something unusual?
• GET /HTTP/1.1
• Host: www.cloudopsguys.com
• Connection: keep-alive
• Accept:
text/html,application/xhtml+xml,application/xml;q=0.
9,*/*;q=0.8
• User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64)
AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/27.0.1453.110 Safari/537.36 PTST/101
• Accept-Encoding: gzip,deflate,sdch
• Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
CloudOpsGuys Your Software | Our Service TM
Shared Dictionary Compression
over HTTP
CloudOpsGuys Your Software | Our Service TM
THANKYOU
www.cloudopsguys.com
CloudOpsGuys
Your Software | Our Service TM
20
CloudOpsGuys Your Software | Our Service TM
Get in Touch www.CloudOpsGuys.com
0208 798 3079info@cloudopsguys.com
twitter.com/cloudopsguys
facebook.com/cloudopsguysskype: cloudopsguys
plus.google.com/cloudopsguys
Social Media Social Media

Weitere ähnliche Inhalte

Andere mochten auch

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 thairStephen 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
 

Andere mochten auch (7)

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
 
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
 

Ähnlich wie London web performance WPO Lessons from the field June 2013

Xeric CloudFR
Xeric CloudFRXeric CloudFR
Xeric CloudFRSunny Tan
 
MeasureWorks - The Art of Staying Fast
MeasureWorks - The Art of Staying FastMeasureWorks - The Art of Staying Fast
MeasureWorks - The Art of Staying FastMeasureWorks
 
MeasureWorks - Why your customers don't like to wait!
MeasureWorks - Why your customers don't like to wait!MeasureWorks - Why your customers don't like to wait!
MeasureWorks - Why your customers don't like to wait!MeasureWorks
 
Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performanceSagar Desarda
 
ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...
ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...
ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...Istanbul Tech Talks
 
Mobile Optimization Tips from Yottaa - MEGMeetup #1
Mobile Optimization Tips from Yottaa - MEGMeetup #1Mobile Optimization Tips from Yottaa - MEGMeetup #1
Mobile Optimization Tips from Yottaa - MEGMeetup #1Yottaa
 
Testing Mobile App Performance
Testing Mobile App PerformanceTesting Mobile App Performance
Testing Mobile App PerformanceTechWell
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbsvarien
 
Google Cloud Lightning Talk
Google Cloud Lightning TalkGoogle Cloud Lightning Talk
Google Cloud Lightning TalkDMI
 
2015 02 24 lmtv baselining
2015 02 24 lmtv baselining2015 02 24 lmtv baselining
2015 02 24 lmtv baseliningTony Fortunato
 
Web Page Speed - A Most Important Feature
Web Page Speed - A Most Important FeatureWeb Page Speed - A Most Important Feature
Web Page Speed - A Most Important FeatureScott Germaise
 
Cloud Services helping in cloud service to be fully knowledgably .pptx
Cloud Services helping in cloud service to be fully knowledgably .pptxCloud Services helping in cloud service to be fully knowledgably .pptx
Cloud Services helping in cloud service to be fully knowledgably .pptxterewog808
 
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...John McCaffrey
 
Windy cityrails performance_tuning
Windy cityrails performance_tuningWindy cityrails performance_tuning
Windy cityrails performance_tuningJohn McCaffrey
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance TestingAnand Bagmar
 
MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...MeasureWorks
 
How to Boost Your SEO With Mobile Performance Optimization
How to Boost Your SEO With Mobile Performance OptimizationHow to Boost Your SEO With Mobile Performance Optimization
How to Boost Your SEO With Mobile Performance OptimizationPercussion Software
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScalePatrick Chanezon
 
Delivering Java Applications? Ensure Top Performance Every Time, with Intell...
 Delivering Java Applications? Ensure Top Performance Every Time, with Intell... Delivering Java Applications? Ensure Top Performance Every Time, with Intell...
Delivering Java Applications? Ensure Top Performance Every Time, with Intell...John Williams
 

Ähnlich wie London web performance WPO Lessons from the field June 2013 (20)

Xeric CloudFR
Xeric CloudFRXeric CloudFR
Xeric CloudFR
 
MeasureWorks - The Art of Staying Fast
MeasureWorks - The Art of Staying FastMeasureWorks - The Art of Staying Fast
MeasureWorks - The Art of Staying Fast
 
Watching websites
Watching websitesWatching websites
Watching websites
 
MeasureWorks - Why your customers don't like to wait!
MeasureWorks - Why your customers don't like to wait!MeasureWorks - Why your customers don't like to wait!
MeasureWorks - Why your customers don't like to wait!
 
Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performance
 
ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...
ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...
ITT 2015 - Kirk Pepperdine - The (not so) Dark Art of Performance Tuning, fro...
 
Mobile Optimization Tips from Yottaa - MEGMeetup #1
Mobile Optimization Tips from Yottaa - MEGMeetup #1Mobile Optimization Tips from Yottaa - MEGMeetup #1
Mobile Optimization Tips from Yottaa - MEGMeetup #1
 
Testing Mobile App Performance
Testing Mobile App PerformanceTesting Mobile App Performance
Testing Mobile App Performance
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbs
 
Google Cloud Lightning Talk
Google Cloud Lightning TalkGoogle Cloud Lightning Talk
Google Cloud Lightning Talk
 
2015 02 24 lmtv baselining
2015 02 24 lmtv baselining2015 02 24 lmtv baselining
2015 02 24 lmtv baselining
 
Web Page Speed - A Most Important Feature
Web Page Speed - A Most Important FeatureWeb Page Speed - A Most Important Feature
Web Page Speed - A Most Important Feature
 
Cloud Services helping in cloud service to be fully knowledgably .pptx
Cloud Services helping in cloud service to be fully knowledgably .pptxCloud Services helping in cloud service to be fully knowledgably .pptx
Cloud Services helping in cloud service to be fully knowledgably .pptx
 
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
 
Windy cityrails performance_tuning
Windy cityrails performance_tuningWindy cityrails performance_tuning
Windy cityrails performance_tuning
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance Testing
 
MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...
 
How to Boost Your SEO With Mobile Performance Optimization
How to Boost Your SEO With Mobile Performance OptimizationHow to Boost Your SEO With Mobile Performance Optimization
How to Boost Your SEO With Mobile Performance Optimization
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
 
Delivering Java Applications? Ensure Top Performance Every Time, with Intell...
 Delivering Java Applications? Ensure Top Performance Every Time, with Intell... Delivering Java Applications? Ensure Top Performance Every Time, with Intell...
Delivering Java Applications? Ensure Top Performance Every Time, with Intell...
 

Mehr von 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 &amp; Seriti Consulting Load Test Case Study
Test Expo 2009   Site Confidence &amp; Seriti Consulting   Load Test Case StudyTest Expo 2009   Site Confidence &amp; Seriti Consulting   Load Test Case Study
Test Expo 2009 Site Confidence &amp; Seriti Consulting Load Test Case StudyStephen Thair
 

Mehr von 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 &amp; Seriti Consulting Load Test Case Study
Test Expo 2009   Site Confidence &amp; Seriti Consulting   Load Test Case StudyTest Expo 2009   Site Confidence &amp; Seriti Consulting   Load Test Case Study
Test Expo 2009 Site Confidence &amp; Seriti Consulting Load Test Case Study
 

Kürzlich hochgeladen

Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 

Kürzlich hochgeladen (20)

Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 

London web performance WPO Lessons from the field June 2013

  • 1. CloudOpsGuys Your Software | Our Service TM 1 CloudOpsGuys Your Software | Our Service TM WPO – Lessons from the Field
  • 2. CloudOpsGuys Your Software | Our Service TM (1) Some quick & dirty ways to do a WPO PoC using automation (2) 5 reasons why having your own WebPageTest instance rocks! (3) The most common WPO mistakes I see (time and time again) (4) Why I love APM tools and you're nuts if you don't use one! Agenda 3
  • 3. CloudOpsGuys Your Software | Our Service TM PoC - Do a quick example video • There are two easy ways to get a rough before/after web optimisation video • Using WebPageTest Compare – http://www.webpagetest.org/compare • Use PageSpeedInsights – https://developers.google.com/speed/pagespeed/in sights – (yes, I know one uses the other!)
  • 4. CloudOpsGuys Your Software | Our Service TM Pagespeed Insights
  • 5. CloudOpsGuys Your Software | Our Service TM And you can watch a video https://developers.google.com/speed/pagespeed/insights#url=http_3A_2F_2Fwww.marksandspencer.com_2FFormal -Shirts-Shirts-Mens_2Fb_2F2559784031_3Fie_3DUTF8_26intid_3Dgnav__men__formal-shirts&mobile=false
  • 6. CloudOpsGuys Your Software | Our Service TM WPT Compare
  • 7. CloudOpsGuys Your Software | Our Service TM Page Speed Service
  • 8. CloudOpsGuys Your Software | Our Service TM Build your own • I’ve been building my own PoC tool using Riverbed Stingray Aptimizer and aiCache.com • Cache static and dynamic optimise resources • Just use CNAMES and some header re- writing to glue it together Browser aiCache Dynamic Stingray Aptimizer Origin Server
  • 9. CloudOpsGuys Your Software | Our Service TM Some gotchas… • Multiple levels of caching – Browser cache – aiCache – Aptimizer cache (optimized static objects) • Making sure that you send the right headers at each “hop” – Right user-agent – Right hostname – Right GZIP / Deflate headers… • FQDN names in source (particularly in top/side nav) – FFS what’s wrong with a relative /link?
  • 10. CloudOpsGuys Your Software | Our Service TM Other lessons • Load time is useless • Render start is useless • Filmstrip, Video or “Visual Progress” is KEY – More on this later…
  • 11. CloudOpsGuys Your Software | Our Service TM Video example
  • 12. CloudOpsGuys Your Software | Our Service TM 5 reasons why WPT Private instance rocks! 1. NO QUEUE! 2. Bulk Testing Mode 3. It’s private 4. It’s inside your firewall 5. Easier access to history of testing 6. You will learn more about features! 1. Visual Progress 2. Connection View 3. Scripting etc etc
  • 13. CloudOpsGuys Your Software | Our Service TM Bulk Testing!
  • 14. CloudOpsGuys Your Software | Our Service TM Give it a list of URL’s
  • 15. CloudOpsGuys Your Software | Our Service TM Visual Progress – KEY!
  • 16. CloudOpsGuys Your Software | Our Service TM Connection view Relatively good…
  • 17. CloudOpsGuys Your Software | Our Service TM Connection view Relatively bad… connection resets after 2 requests…
  • 18. CloudOpsGuys Your Software | Our Service TM LESSON LEARNT FROM CONSULTING What I see day in, day out…
  • 19. CloudOpsGuys Your Software | Our Service TM Lessons learnt from consulting… 20/06/2013 19 Generic Description Reduce Page Size Reduce Number of Requests Implement GZIP Compression Optimise Loading of external files Defer JavaScript loading Optimise images Optimize HTTP Caching Domain Sharding Cookie- free Domains Back-end performance tuning Remove Unnecessary CSS High Street Retailer Yes Yes No No No No Yes No Yes No Yes Budget Hotel Chain No Yes No No No Yes Yes Yes Yes Yes No Professional Body No Yes Yes Yes Yes Yes Yes Yes No Yes No High Street Retailer No Yes No Yes Yes Yes Yes Yes Yes Yes No VOD provider No Yes No No Yes Yes Yes Yes Yes Yes Yes Consumer Electronics Brand Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Fashion Retailer No Yes No No Yes Yes Yes No Yes Yes Yes Travel Sector No Yes Yes Yes Yes no Yes Yes Yes Yes No Fashion Retailer Yes Yes Yes Yes Yes No Yes Yes No Yes No Fashion Retailer Yes Yes No No Yes No Yes Yes Yes Yes No Home Improvement Retail No Yes No No Yes No Yes Yes Yes Yes Yes Electrical Retailer Yes Yes no Yes Yes No Yes No Yes Yes No Electrical Retailer Yes Yes No No Yes Yes Yes Yes No Yes No Online Gambling Yes Yes Yes Yes No Yes Yes No Yes Yes Yes Mobile Phone Retailer Yes Yes No Yes Yes Yes Yes Yes Yes No Yes Insurance Provider No Yes No No Yes No Yes Yes No Yes Yes Emergency Repair Service No Yes No Yes No Yes Yes Yes No Yes Yes Mobile Phone Retailer Yes Yes No Yes Yes Yes Yes Yes No Yes Yes Car Manufacturer No Yes No No No Yes Yes Yes Yes Yes Yes Financial Services No Yes Yes No Yes No Yes Yes No Yes Yes Travel Sector Yes Yes No No Yes No Yes Yes No No No Publisher No Yes Yes No Yes Yes Yes Yes No No Yes Publisher No Yes No No Yes No Yes Yes Yes No Yes High Street Retailer Yes Yes No Yes Yes Yes Yes Yes No No Yes Newspaper Yes Yes No Yes Yes Yes Yes No Yes Yes Yes 48% 100% 28% 48% 80% 60% 100% 80% 60% 76% 64%
  • 20. CloudOpsGuys Your Software | Our Service TM20/06/2013 20 Performance Rule Frequency Recommended Reduce Number of Requests 100% Optimize HTTP Caching 100% Defer JavaScript loading 80% Domain Sharding 80% -Back end performance tuning 76% Remove Unnecessary CSS 64% Optimise images 60% -Cookie free Domains 60% Reduce Page Size 48% Optimise Loading of external files 48% Implement GZIP Compression 28%
  • 21. CloudOpsGuys Your Software | Our Service TM What else? • It takes ages for anything to change – (hence why I am focussing on automation stuff) • Video’s are a killer tool • Analysis of synthetic monitoring can tell you an lot about back-end performance • Use analogies (I wrote a whole whitepaper using shopping at Tesco as an analogy for web performance…)
  • 22. CloudOpsGuys Your Software | Our Service TM WHY I LOVE APM TOOLS… Deeper insights into back-end performance…
  • 23. CloudOpsGuys Your Software | Our Service TM 4 quick examples • Know your dependencies! – And don’t assume it’s your code that sucks… • You can focus on application transactions • How many transactions to load a page? – And why ORM’s can suck… • And classic Application metrics – “The heap is doing WHAT?”
  • 24. CloudOpsGuys Your Software | Our Service TM Know your dependencies
  • 25. CloudOpsGuys Your Software | Our Service TM Focus on Application Transactions
  • 26. CloudOpsGuys Your Software | Our Service TM How many calls? Query Avg. Time (ms) Count Tot. Time (ms) % Time server=83.231.201.82;database=e6-goshcc;uid=e6- goshcc;pwd=<snip> 0.26 1542 408 1.6 ESModule_EShop_SelectPrice 6.9 1216 8387 32.8 ESModule_EShop_SelectOrderItems 7.43 394 2929 11.5 ESCore_Lookup_Countries_Select 9.4 391 3676 14.4 ESModule_EShop_SelectAddress 10.15 285 2893 11.3 ESCore_Admin_LoadUserDetails 15.62 86 1343 5.3 ESModule_EShop_SelectOrderLineExtendedRecord 15.69 65 1020 4 ESCore_Data_GetNavigation 27.89 9 251 1 ESCore_Data_GetObjectDetails 3.44 9 31 0.1 ESCore_Data_IsObjectChildOfObject 0 8 0 0
  • 27. CloudOpsGuys Your Software | Our Service TM I think you have a memory leak
  • 28. CloudOpsGuys Your Software | Our Service TM Bonus question! Something unusual? • GET /HTTP/1.1 • Host: www.cloudopsguys.com • Connection: keep-alive • Accept: text/html,application/xhtml+xml,application/xml;q=0. 9,*/*;q=0.8 • User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36 PTST/101 • Accept-Encoding: gzip,deflate,sdch • Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
  • 29. CloudOpsGuys Your Software | Our Service TM Bonus question! Something unusual? • GET /HTTP/1.1 • Host: www.cloudopsguys.com • Connection: keep-alive • Accept: text/html,application/xhtml+xml,application/xml;q=0. 9,*/*;q=0.8 • User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36 PTST/101 • Accept-Encoding: gzip,deflate,sdch • Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
  • 30. CloudOpsGuys Your Software | Our Service TM Shared Dictionary Compression over HTTP
  • 31. CloudOpsGuys Your Software | Our Service TM THANKYOU www.cloudopsguys.com CloudOpsGuys Your Software | Our Service TM 20
  • 32. CloudOpsGuys Your Software | Our Service TM Get in Touch www.CloudOpsGuys.com 0208 798 3079info@cloudopsguys.com twitter.com/cloudopsguys facebook.com/cloudopsguysskype: cloudopsguys plus.google.com/cloudopsguys Social Media Social Media

Hinweis der Redaktion

  1. Based on 25 consulting reports across a wide range of e-commerce and publishing sites
  2. 100% of the time there were too many requests100% of the time they weren’t using caching to its full advantage, and hence repeat visits were slower than they needed to be…76% of the sites exhibited noticable slowing down during peak time of day/week~50% of the time the pages were bloated (often due to images that on average can be optimised ~15%) Frighteningly ¼ of the sites analysed either didn’t have Gzip compression enabled or it had problems e.g. failing under load!