SlideShare a Scribd company logo
1 of 50
Our Site Performance ,[object Object]
Performance Anxiety? ,[object Object],[object Object],[object Object]
Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time
Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],[object Object]
Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],Be Internet LINX Global
Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time GET / HTTP/1.1 Host: www.heart.co.uk User-Agent: Mozilla/5.0 .... Accept: text/html,... Accept-Language: en-gb,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Cache-Control: max-age=0
Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time Processing ...
Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time HTTP/1.1 200 OK Server: nginx Date: Wed, 11 Aug 2010 19:07:07 GMT Content-Type: text/html; charset=utf-8 Transfer-Encoding: chunked Connection: keep-alive Keep-Alive: timeout=5 Vary: Accept-Encoding Vary: Cookie Content-Encoding: gzip ...
Typical Heart response DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],[object Object],[object Object]
Understand the tools From Google's webmaster tools documentation: “ Page load time is the total time from the moment the user clicks on a link to your page until the time the entire page is loaded and displayed in a browser. It is collected directly from users who have installed the Google Toolbar and have enabled the optional PageRank feature.”
Understand the tools ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Firebug ,[object Object],[object Object],[object Object]
 
DNS lookup Connecting Sending Waiting Receiving
 
 
5 seconds!
Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time So how do we make individual requests faster?
Speeding up a DNS request DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],[object Object]
The Internet Be Internet LINX CheapNet myfirstwebsite.com Level3 Verio Global heart.co.uk NYIIX
Anycast DNS Be Internet LINX CheapNet myfirstwebsite.com Level3 Verio Global heart.co.uk EasyDNS EasyDNS NYIIX 64.68.192.0/20 64.68.192.0/20
Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],Be Internet LINX Global
Speeding up a web request Be Internet LINX CheapNet myfirstwebsite.com Level3 Verio Global heart.co.uk NYIIX
Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time GET / HTTP/1.1 Host: www.heart.co.uk User-Agent: Mozilla/5.0 .... Accept: text/html,... Accept-Language: en-gb,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Cache-Control: max-age=0
Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time Processing ...
Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Speeding up a web response DNS lookup Connecting Sending Waiting Receiving Time ,[object Object],[object Object]
Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time Make fewer requests per page!
Concurrent Connections Browser Statistics stats from browserscope.org Browser Max connections per hostname Opera 10 7 Firefox 3 6 Google Chrome 4 6 Safari 4 6 iPad 4 6 iPhone 4 4 Android 4 Internet Explorer 7 2
Concurrent Connections Browser Statistics stats from browserscope.org Browser Max connections (total) Opera 10 29 Firefox 3 30 Google Chrome 4 52 Safari 4 60 iPad 4 30 iPhone 4 30 Android 4 Internet Explorer 7 60
Optimising F/E Performance ,[object Object],[object Object],[object Object],[object Object]
[object Object],Optimising F/E Performance <div id=”box”> <span class=”top-left”></span> <span class=”top-right”></span> This is a box <span class=”btm-left”></span> <span class=”btm-right”></span> </div>
[object Object],Optimising F/E Performance div#box span.top-left, div#box span.top-right, div#box span.btm-left, div#box span.btm-right, { position:absolute; top:0; left:0; background-image:url(rounded-corners.png); } div#box span.top-right { left:auto; right:0; background-position:top right; } div#box span.btm-left  { top:auto; bottom:0; background-position:bottom left; } div#box span.btm-right { top:auto; bottom:0; left:auto; right:auto; background-position:bottom right; }
[object Object],Optimising F/E Performance <div id=”box”> This is a box </div> div#box { border-radius:2px; }
[object Object],Optimising F/E Performance
[object Object],Optimising F/E Performance button { border: 1px solid #535353; border-radius: 5px; background-image: gradient( linear, left top, left bottom, color-stop(0.3, rgb(186,186,186)), color-stop(0.62, rgb(149,149,149)), color-stop(0.98, rgb(135,135,135)) ); } ,[object Object]
[object Object],Simplified Markup Site HTML Content %age Absolute 26,174 4,387 16.76 Heart 41,859 6,721 16.05 BBC Entertainment 49,803 6,066 12.18 Digital Spy 67,687 7,480 11.05 KISS100 57,659 4,063 0.07 Trent FM 48,404 2,822 0.06
Reducing HTTP Requests ,[object Object],[object Object],[object Object]
Concatenated Files <script src=&quot; locator.js &quot; type=&quot;text/javascript&quot; ></script> <script src=&quot; bbc_fmtj.j s &quot; type=&quot;te xt/javascript&quot; ></script> <script src=&quot; bbc_fmtj_common.js &quot; t ype=&quot;text/javascri pt&quot; ></script> <script src=&quot; bbc_fmtj_config.js &quot; type=&quot;text/javascri pt&quot; ></script> <scr ipt src=&quot; config.sjson &quot; type=&quot;text/javascript&quot; ></script> ,[object Object]
Concatenated Files <script src=&quot; gusto.js &quot; type=&quot;text/javascript&quot; ></script> <script src=&quot; jquery.j s &quot; type=&quot; text/javascript&quot; ></script> <script src=&quot; form_validation.j s &quot; type=&quot;text/java script&quot; ></script> <script src=&quot; cookies.js &quot; type=&quot;text/javascript&quot;  ></script> <script src=&quot;megamod.js&quot; type=&quot;text/javascript&quot; ></script> <script src=&quot;login_lightbox.js&quot; type=&quot;text/javascript&quot; ></script> ,[object Object],<script src=&quot; heart_minified.js &quot; type=&quot;text/javascript&quot; ></script> ,[object Object]
Concatenated Files <link rel=&quot;stylesheet&quot; href=&quot;hp.css&quot;> <!--[if IE]> <link rel=&quot;stylesheet&quot; href=&quot;hp_iehacks.css&quot;> <![endif]--> ,[object Object],[object Object],[object Object]
Concatenated Files <!--[if !IE]><!--> <link rel=&quot;stylesheet&quot; href=&quot; heart-minified.css &quot; media=&quot;screen&quot; type=&quot;text/css&quot;> <!--<![endif]--> <!--[if IE 6]> <link rel=&quot;stylesheet&quot; href=&quot; combined/ie6-minif ied.css &quot; media=&quot;screen&quot; t ype=&quot;text/css&quot;> <![endif]--> <!--[if IE 7]> <link rel=&quot;stylesheet&quot; href=&quot; ie7-minified.css &quot; media=&quot;screen&quot; type=&quot;text /css&quot;> <![endif]- -> <!--[if gt IE 7]> <link rel=&quot;stylesheet&quot; href=&quot; e8-minified.css &quot; media=&quot;screen&quot; type=&quot;text/css&quot;> <![endif]-- > ,[object Object]
Concatenated Files ,[object Object]
Concatenated Files ,[object Object]
Concatenated Files ,[object Object],Site JS CSS Img Total Digital Spy 3 1 7 11 Heart 2 1 8 11 Absolute 6 1 (2) 23 30 (31) Trent FM 9 3 24 36 BBC Ents 13 9 (10) 18 40 (41) KISS100 20 (22) 9 (16/10) 13 42 (51/43)
Compressed Files .article p {  line-height: 150%;  font-size: 93%; } .article ul,.article ol { font-size: 13px; } .article ul li,.article ol li { font-size: 93%; } .article .byline{  font-size: 93%; /* 12px */ margin-bottom: 1em; } ,[object Object]
Compressed Files .article p{line-height:150%;font-size:93%}.article ul,.article ol{font-size:13px}.article ul li,.article ol li{font-size:93%}.article .byline{font-size:93%;margin-bottom:1em}.article .byline .date{margin-right:1.66em}.article .byline .comments a{display:inline}.article .byline .has_date{margin-left:1.5em}.article .related_content{float:right;width:244px;margin-left:12px}.article .related_content img{margin-bottom:12px}.article .related_links{width:242px;margin-bottom:1em} ,[object Object],[object Object],[object Object]
Adverts ,[object Object],[object Object],[object Object],[object Object]
Ads - you broke my Heart Product # of ad calls Players 1 Xfm 4 Galaxy 4 CapitalFM 5 Classic FM 6 Trent FM 8 Heart 12
Slow Ads Are Slow test heart.co.uk heart, no ads just ads 1 4.099 2.451 4.078 2 3.688 2.315 1.915 3 4.329 2.24 2.212 4 5.413 3.063 3.038 5 4.879 2.195 1.989 6 4.21 2.347 2.194 7 5.283 2.14 1.985 8 5.129 2.613 2.505 9 4.105 2.147 2.089 10 5.689 2.225 2.16 av 4.68 2.37 2.417

More Related Content

What's hot

Session2 part1
Session2 part1Session2 part1
Session2 part1banputer
 
PHP Presentation
PHP PresentationPHP Presentation
PHP PresentationAnkush Jain
 
Web Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp CopenhagenWeb Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp CopenhagenMark Wubben
 
The 5 most common reasons for a slow WordPress site and how to fix them
The 5 most common reasons for a slow WordPress site and how to fix themThe 5 most common reasons for a slow WordPress site and how to fix them
The 5 most common reasons for a slow WordPress site and how to fix themOtto Kekäläinen
 
Crawl the entire web in 10 minutes...and just 100€
Crawl the entire web  in 10 minutes...and just 100€Crawl the entire web  in 10 minutes...and just 100€
Crawl the entire web in 10 minutes...and just 100€Danny Linden
 
Bringing Typography to the Web with sIFR 3 at <head>
Bringing Typography to the Web with sIFR 3 at <head>Bringing Typography to the Web with sIFR 3 at <head>
Bringing Typography to the Web with sIFR 3 at <head>Mark Wubben
 
Coding Web Performance
Coding Web PerformanceCoding Web Performance
Coding Web PerformanceKoji Ishimoto
 
SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...
SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...
SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...Distilled
 
Reducing Server Resources: Improve Costs, SEO, Conversions & UX
Reducing Server Resources: Improve Costs, SEO, Conversions & UXReducing Server Resources: Improve Costs, SEO, Conversions & UX
Reducing Server Resources: Improve Costs, SEO, Conversions & UXMichael Jones
 
DEF CON 27 - BEN SADEGHIPOUR - owning the clout through ssrf and pdf generators
DEF CON 27 - BEN SADEGHIPOUR  - owning the clout through ssrf and pdf generatorsDEF CON 27 - BEN SADEGHIPOUR  - owning the clout through ssrf and pdf generators
DEF CON 27 - BEN SADEGHIPOUR - owning the clout through ssrf and pdf generatorsFelipe Prado
 
Browser Extensions for Web Hackers
Browser Extensions for Web HackersBrowser Extensions for Web Hackers
Browser Extensions for Web HackersMark Wubben
 
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your LogsSearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your LogsDistilled
 
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014Bastian Grimm
 

What's hot (20)

PHP
PHPPHP
PHP
 
Session2 part1
Session2 part1Session2 part1
Session2 part1
 
Css by tanbircox
Css by tanbircoxCss by tanbircox
Css by tanbircox
 
PHP Presentation
PHP PresentationPHP Presentation
PHP Presentation
 
Web Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp CopenhagenWeb Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp Copenhagen
 
The 5 most common reasons for a slow WordPress site and how to fix them
The 5 most common reasons for a slow WordPress site and how to fix themThe 5 most common reasons for a slow WordPress site and how to fix them
The 5 most common reasons for a slow WordPress site and how to fix them
 
Crawl the entire web in 10 minutes...and just 100€
Crawl the entire web  in 10 minutes...and just 100€Crawl the entire web  in 10 minutes...and just 100€
Crawl the entire web in 10 minutes...and just 100€
 
Bringing Typography to the Web with sIFR 3 at <head>
Bringing Typography to the Web with sIFR 3 at <head>Bringing Typography to the Web with sIFR 3 at <head>
Bringing Typography to the Web with sIFR 3 at <head>
 
Coding Web Performance
Coding Web PerformanceCoding Web Performance
Coding Web Performance
 
SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...
SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...
SearchLove San Diego 2018 | Tom Anthony | An Introduction to HTTP/2 & Service...
 
Reducing Server Resources: Improve Costs, SEO, Conversions & UX
Reducing Server Resources: Improve Costs, SEO, Conversions & UXReducing Server Resources: Improve Costs, SEO, Conversions & UX
Reducing Server Resources: Improve Costs, SEO, Conversions & UX
 
DEF CON 27 - BEN SADEGHIPOUR - owning the clout through ssrf and pdf generators
DEF CON 27 - BEN SADEGHIPOUR  - owning the clout through ssrf and pdf generatorsDEF CON 27 - BEN SADEGHIPOUR  - owning the clout through ssrf and pdf generators
DEF CON 27 - BEN SADEGHIPOUR - owning the clout through ssrf and pdf generators
 
Html by tanbircox
Html by tanbircoxHtml by tanbircox
Html by tanbircox
 
Print this
Print thisPrint this
Print this
 
Browser Extensions for Web Hackers
Browser Extensions for Web HackersBrowser Extensions for Web Hackers
Browser Extensions for Web Hackers
 
Video SEO
Video SEOVideo SEO
Video SEO
 
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your LogsSearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
 
Wed hosting
Wed hostingWed hosting
Wed hosting
 
All About HTML Tags
All About HTML TagsAll About HTML Tags
All About HTML Tags
 
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
 

Viewers also liked

OCSICO Company Overview
OCSICO Company OverviewOCSICO Company Overview
OCSICO Company Overviewzolotova
 
OCSICO Android Expertise
OCSICO Android ExpertiseOCSICO Android Expertise
OCSICO Android Expertisezolotova
 
OCSICO iPhone Expertise
OCSICO iPhone ExpertiseOCSICO iPhone Expertise
OCSICO iPhone Expertisezolotova
 
Practical CSS3 NOW!
Practical CSS3 NOW!Practical CSS3 NOW!
Practical CSS3 NOW!gareth53
 

Viewers also liked (6)

OCSICO Company Overview
OCSICO Company OverviewOCSICO Company Overview
OCSICO Company Overview
 
Famelarization in diabetes
Famelarization in diabetesFamelarization in diabetes
Famelarization in diabetes
 
OCSICO Android Expertise
OCSICO Android ExpertiseOCSICO Android Expertise
OCSICO Android Expertise
 
OCSICO iPhone Expertise
OCSICO iPhone ExpertiseOCSICO iPhone Expertise
OCSICO iPhone Expertise
 
Practical CSS3 NOW!
Practical CSS3 NOW!Practical CSS3 NOW!
Practical CSS3 NOW!
 
Mac basics
Mac basicsMac basics
Mac basics
 

Similar to Web performance - Analysing Heart.co.uk

Client Side Performance @ Xero
Client Side Performance @ XeroClient Side Performance @ Xero
Client Side Performance @ XeroCraig Walker
 
Web Performance, Scalability, and Testing Techniques - Boston PHP Meetup
Web Performance, Scalability, and Testing Techniques - Boston PHP MeetupWeb Performance, Scalability, and Testing Techniques - Boston PHP Meetup
Web Performance, Scalability, and Testing Techniques - Boston PHP MeetupJonathan Klein
 
Fast and Easy Website Tuneups
Fast and Easy Website TuneupsFast and Easy Website Tuneups
Fast and Easy Website TuneupsJeff Wisniewski
 
Ajax to the Moon
Ajax to the MoonAjax to the Moon
Ajax to the Moondavejohnson
 
Web performance optimization
Web performance optimizationWeb performance optimization
Web performance optimizationKaliop-slide
 
CTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowCTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowSpiffy
 
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
 
Progressive enhancement
Progressive enhancementProgressive enhancement
Progressive enhancementZohar Arad
 
Progressive enhancement - Bridging the gap between CSS2 and CSS3
Progressive enhancement - Bridging the gap between CSS2 and CSS3Progressive enhancement - Bridging the gap between CSS2 and CSS3
Progressive enhancement - Bridging the gap between CSS2 and CSS3Zohar Arad
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax ApplicationsSiarhei Barysiuk
 
Joomla Extreme Performance
Joomla Extreme PerformanceJoomla Extreme Performance
Joomla Extreme PerformanceMitch Pirtle
 
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps FasterPractical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps FasterDoris Chen
 
Going on an HTTP Diet: Front-End Web Performance
Going on an HTTP Diet: Front-End Web PerformanceGoing on an HTTP Diet: Front-End Web Performance
Going on an HTTP Diet: Front-End Web PerformanceAdam Norwood
 
Site Performance - From Pinto to Ferrari
Site Performance - From Pinto to FerrariSite Performance - From Pinto to Ferrari
Site Performance - From Pinto to FerrariJoseph Scott
 
Internet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian ThilmanyInternet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian ThilmanyChristian Thilmany
 
Web Client Performance
Web Client PerformanceWeb Client Performance
Web Client PerformanceHerea Adrian
 

Similar to Web performance - Analysing Heart.co.uk (20)

Client Side Performance @ Xero
Client Side Performance @ XeroClient Side Performance @ Xero
Client Side Performance @ Xero
 
Web Performance, Scalability, and Testing Techniques - Boston PHP Meetup
Web Performance, Scalability, and Testing Techniques - Boston PHP MeetupWeb Performance, Scalability, and Testing Techniques - Boston PHP Meetup
Web Performance, Scalability, and Testing Techniques - Boston PHP Meetup
 
Please dont touch-3.6-jsday
Please dont touch-3.6-jsdayPlease dont touch-3.6-jsday
Please dont touch-3.6-jsday
 
Fast and Easy Website Tuneups
Fast and Easy Website TuneupsFast and Easy Website Tuneups
Fast and Easy Website Tuneups
 
Ajax to the Moon
Ajax to the MoonAjax to the Moon
Ajax to the Moon
 
Web performance optimization
Web performance optimizationWeb performance optimization
Web performance optimization
 
CTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowCTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should Know
 
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
 
Progressive enhancement
Progressive enhancementProgressive enhancement
Progressive enhancement
 
Progressive enhancement - Bridging the gap between CSS2 and CSS3
Progressive enhancement - Bridging the gap between CSS2 and CSS3Progressive enhancement - Bridging the gap between CSS2 and CSS3
Progressive enhancement - Bridging the gap between CSS2 and CSS3
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax Applications
 
5 critical-optimizations.v2
5 critical-optimizations.v25 critical-optimizations.v2
5 critical-optimizations.v2
 
Joomla Extreme Performance
Joomla Extreme PerformanceJoomla Extreme Performance
Joomla Extreme Performance
 
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps FasterPractical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
 
Performance engineering
Performance engineeringPerformance engineering
Performance engineering
 
Going on an HTTP Diet: Front-End Web Performance
Going on an HTTP Diet: Front-End Web PerformanceGoing on an HTTP Diet: Front-End Web Performance
Going on an HTTP Diet: Front-End Web Performance
 
Site Performance - From Pinto to Ferrari
Site Performance - From Pinto to FerrariSite Performance - From Pinto to Ferrari
Site Performance - From Pinto to Ferrari
 
Internet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian ThilmanyInternet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian Thilmany
 
Web Client Performance
Web Client PerformanceWeb Client Performance
Web Client Performance
 

Recently uploaded

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
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
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Web performance - Analysing Heart.co.uk

  • 1.
  • 2.
  • 3. Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time
  • 4.
  • 5.
  • 6. Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time GET / HTTP/1.1 Host: www.heart.co.uk User-Agent: Mozilla/5.0 .... Accept: text/html,... Accept-Language: en-gb,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Cache-Control: max-age=0
  • 7. Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time Processing ...
  • 8. Anatomy of a web request DNS lookup Connecting Sending Waiting Receiving Time HTTP/1.1 200 OK Server: nginx Date: Wed, 11 Aug 2010 19:07:07 GMT Content-Type: text/html; charset=utf-8 Transfer-Encoding: chunked Connection: keep-alive Keep-Alive: timeout=5 Vary: Accept-Encoding Vary: Cookie Content-Encoding: gzip ...
  • 9.
  • 10. Understand the tools From Google's webmaster tools documentation: “ Page load time is the total time from the moment the user clicks on a link to your page until the time the entire page is loaded and displayed in a browser. It is collected directly from users who have installed the Google Toolbar and have enabled the optional PageRank feature.”
  • 11.
  • 12.
  • 13.  
  • 14. DNS lookup Connecting Sending Waiting Receiving
  • 15.  
  • 16.  
  • 18. Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time So how do we make individual requests faster?
  • 19.
  • 20. The Internet Be Internet LINX CheapNet myfirstwebsite.com Level3 Verio Global heart.co.uk NYIIX
  • 21. Anycast DNS Be Internet LINX CheapNet myfirstwebsite.com Level3 Verio Global heart.co.uk EasyDNS EasyDNS NYIIX 64.68.192.0/20 64.68.192.0/20
  • 22.
  • 23. Speeding up a web request Be Internet LINX CheapNet myfirstwebsite.com Level3 Verio Global heart.co.uk NYIIX
  • 24. Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time GET / HTTP/1.1 Host: www.heart.co.uk User-Agent: Mozilla/5.0 .... Accept: text/html,... Accept-Language: en-gb,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Cache-Control: max-age=0
  • 25. Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time Processing ...
  • 26.
  • 27.
  • 28. Speeding up a web request DNS lookup Connecting Sending Waiting Receiving Time Make fewer requests per page!
  • 29. Concurrent Connections Browser Statistics stats from browserscope.org Browser Max connections per hostname Opera 10 7 Firefox 3 6 Google Chrome 4 6 Safari 4 6 iPad 4 6 iPhone 4 4 Android 4 Internet Explorer 7 2
  • 30. Concurrent Connections Browser Statistics stats from browserscope.org Browser Max connections (total) Opera 10 29 Firefox 3 30 Google Chrome 4 52 Safari 4 60 iPad 4 30 iPhone 4 30 Android 4 Internet Explorer 7 60
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49. Ads - you broke my Heart Product # of ad calls Players 1 Xfm 4 Galaxy 4 CapitalFM 5 Classic FM 6 Trent FM 8 Heart 12
  • 50. Slow Ads Are Slow test heart.co.uk heart, no ads just ads 1 4.099 2.451 4.078 2 3.688 2.315 1.915 3 4.329 2.24 2.212 4 5.413 3.063 3.038 5 4.879 2.195 1.989 6 4.21 2.347 2.194 7 5.283 2.14 1.985 8 5.129 2.613 2.505 9 4.105 2.147 2.089 10 5.689 2.225 2.16 av 4.68 2.37 2.417