SlideShare a Scribd company logo
Making the Web Faster
National Capital Area Google Technology Users Group




Patrick Meenan
Twitter: @PatMeenan
pmeenan@webpagetest.org



                                                      1
Waterfalls
Waterfall Components




               DNS
                                 HTTP Request
              Lookup




                       Socket                   Content
                       Connect                  Download




                                                           3
Front-End vs Back-End

Base Page




                         Back-End Processing




                                               4
High Performance Websites

1. Make fewer HTTP requests
2. Use CDN
3. Add expires header
4. Gzip Components
5. Put stylesheets at the top
6. Put scripts at the bottom
7. Avoid CSS expressions
8. Make JS and CSS external
9. Reduce DNS lookups
10. Minify JS
11. Avoid redirects
12. Remove duplicate scripts
13. Configure Etags
14. Make Ajax cacheable
15. Sharding domains




                                5
Measuring Performance




                        6
Synthetic Measurement

www.webpagetest.org




                        7
Real User Measurement

_gaq.push(['_trackPageLoadTime']);




                                     8
Navigation Timing

window.performance.timing




                            9
Chrome Developer Tools




                         10
Optimization Checking




                        11
Page Speed

• http://code.google.com/speed/page-speed/
• Chrome and Firefox Extensions




                                             12
Page Speed Online

http://pagespeed.googlelabs.com/




                                   13
WebPagetest




              14
Making it Faster – Network Layer




                                   15
TCP Initial Congestion Window

 This:




 Is Really This (Current OS’s):

                              4K        8K     16K   32K




 Linux 2.6.39:

                                  15K    30K   …




                                                           16
SPDY

• Multiplexed streams
• Request prioritization
• HTTP header compression
• Server push
• Server hint


• 10-50% improvement in load times




                                     17
TLS Improvements

• False Start
• Snap Start




                   SSL Negotiation




                                     18
Making it Faster – Front-End




                               19
mod_pagespeed

http://code.google.com/speed/page-speed/docs/module.html

• Apache module
• GoDaddy
• Dreamhost


• Automatic Image Compression & Resizing
• Minify CSS, JavaScript and HTML
• Inline small images, CSS, and JavaScript
• Cache Extension
• CSS/Javascript Combining
• Domain Mapping
• Domain Sharding


                                                           20
mod_pagespeed improvement




                            21
androidacademy.com timeline (median of 50 runs)




                                                  22
Instant Pages




      http://youtu.be/_Jn93FDx9oI?hd=1




                                         23
Instant Pages




     <link rel=prerender href=“…”>




                                     24
WebPagetest




              25
The basics – testing “pages”

• www.webpagetest.org
• Submit an URL….
From multiple locations globally…




                                    27
The basics – get “results”
Performance and optimization information
What it looks like
What it looks like
What if…
Comparing arbitrary tests
The comparison
Comparison Videos




                    Filmstrip


                     Video



                                34
More advanced capabilities

Automating Rich Applications
• Authenticating into form-protected applications
• Interacting with Web Apps (Mail, Calendar, etc)
• Testing a navigation flow from one page to another
• Execute arbitrary Javascript

REALLY Advanced Options
• Re-writing DNS lookups (directing traffic to a test/staging box)
• Custom User-Agent strings & HTTP Headers
• Pre-populating cookies
• Custom test end conditions
• Capture Dynatrace Ajax Edition sessions
• Tcpdump capture

                                                                     35
Private Instances
http://sites.google.com/a/webpagetest.org/docs/private-instances

Bulk Testing

EC2 Agent Public AMI’s
• US (East/West)
• Europe
• Asia (Singapore/Tokyo)


Public Projects
• HTTP Archive
• Blaze Mobitest
REST API

Submit tests (API key required for public instance)
• Check status
• Fetch Result




1.XML

2.HAR



http://sites.google.com/a/webpagetest.org/docs/advanced-
features/webpagetest-restful-apis
WPT Monitor
 Tony Perkins (Sabre)
 http://www.webpagetest.org/forums/forumdisplay.php?fid=21

More Related Content

PPTX
Measuring the visual experience of website performance
PPT
Selecting and deploying automated optimization solutions
PPT
Velocity EU 2012 - Third party scripts and you
PPTX
Measuring web performance
PDF
WebPagetest Power Users - Velocity 2014
PDF
Tracking Performance - Velocity NYC 2013
PPTX
Web Performance Optimization
PPTX
Front-End Single Point of Failure - Velocity 2016 Training
Measuring the visual experience of website performance
Selecting and deploying automated optimization solutions
Velocity EU 2012 - Third party scripts and you
Measuring web performance
WebPagetest Power Users - Velocity 2014
Tracking Performance - Velocity NYC 2013
Web Performance Optimization
Front-End Single Point of Failure - Velocity 2016 Training

What's hot (20)

PDF
Velocity 2014 nyc WebPagetest private instances
PDF
Mobile web performance - MoDev East
PPT
Service Workers for Performance
PDF
WebPagetest - Good, Bad & Ugly
PDF
Hacking Web Performance @ ForwardJS 2017
PPTX
Metrics, metrics everywhere (but where the heck do you start?)
PPT
Scaling Front-End Performance - Velocity 2016
PPT
A web perf dashboard up & running in 90 minutes presentation
PPTX
Automated Testing with Google Chrome - WebDriver- ChromeDriver
PPTX
Using Modern Browser APIs to Improve the Performance of Your Web Applications
PDF
Make It Fast - Using Modern Browser Performance APIs to Monitor and Improve t...
PPTX
HTTPS and HTTP/2
PDF
Forensic Tools for In-Depth Performance Investigations
PPTX
Metrics, Metrics Everywhere (but where the heck do you start?)
PPTX
Monitoring web application response times, a new approach
PDF
Measuring Web Performance
PDF
Hacking Web Performance
PPT
Testing Any Site With Cucumber and Selenium
PPTX
BDD / cucumber /Capybara
PPTX
Ruby in the Browser - RubyConf 2011
Velocity 2014 nyc WebPagetest private instances
Mobile web performance - MoDev East
Service Workers for Performance
WebPagetest - Good, Bad & Ugly
Hacking Web Performance @ ForwardJS 2017
Metrics, metrics everywhere (but where the heck do you start?)
Scaling Front-End Performance - Velocity 2016
A web perf dashboard up & running in 90 minutes presentation
Automated Testing with Google Chrome - WebDriver- ChromeDriver
Using Modern Browser APIs to Improve the Performance of Your Web Applications
Make It Fast - Using Modern Browser Performance APIs to Monitor and Improve t...
HTTPS and HTTP/2
Forensic Tools for In-Depth Performance Investigations
Metrics, Metrics Everywhere (but where the heck do you start?)
Monitoring web application response times, a new approach
Measuring Web Performance
Hacking Web Performance
Testing Any Site With Cucumber and Selenium
BDD / cucumber /Capybara
Ruby in the Browser - RubyConf 2011
Ad

Similar to Making the web faster (20)

PPTX
Web Performance 101
PPT
Web前端性能分析工具导引
KEY
Speed is Essential for a Great Web Experience
PDF
Speed is Essential for a Great Web Experience (Canvas Conf Version)
PDF
Go Faster, Webmaster
PDF
Go Faster, Webmasters
KEY
Faster Frontends
PDF
Web performance optimization - MercadoLibre
PPTX
SearchLove San Diego 2018 | Mat Clayton | Site Speed for Digital Marketers
PPTX
Breaking the Speed Limit: Faster Websites Win
PDF
5 Best Practices For Blazing Fast Website Performance presented by Gomez & Fo...
PDF
Client-side Web Performance Optimization [paper]
PDF
Hacking Web Performance 2019
PDF
Improving frontend performance
PPT
Make Drupal Run Fast - increase page load speed
PDF
Velocity_Conference
PPTX
Performance on a budget
PPTX
5 Steps to Faster Web Sites and HTML5 Games
PPTX
Why your slow loading website is costing you sales and how to fix it
PPTX
Why your slow loading website is costing you sales and how to fix it
Web Performance 101
Web前端性能分析工具导引
Speed is Essential for a Great Web Experience
Speed is Essential for a Great Web Experience (Canvas Conf Version)
Go Faster, Webmaster
Go Faster, Webmasters
Faster Frontends
Web performance optimization - MercadoLibre
SearchLove San Diego 2018 | Mat Clayton | Site Speed for Digital Marketers
Breaking the Speed Limit: Faster Websites Win
5 Best Practices For Blazing Fast Website Performance presented by Gomez & Fo...
Client-side Web Performance Optimization [paper]
Hacking Web Performance 2019
Improving frontend performance
Make Drupal Run Fast - increase page load speed
Velocity_Conference
Performance on a budget
5 Steps to Faster Web Sites and HTML5 Games
Why your slow loading website is costing you sales and how to fix it
Why your slow loading website is costing you sales and how to fix it
Ad

More from Patrick Meenan (16)

PPTX
Resource Prioritization
PPTX
HTTP/2 Prioritization
PPTX
Getting the most out of WebPageTest
PDF
Http2 in practice
PPTX
Resource loading, prioritization, HTTP/2 - oh my!
PPTX
How fast is it?
PPTX
Machine Learning RUM - Velocity 2016
PPTX
TLS - 2016 Velocity Training
PPTX
Service workers - Velocity 2016 Training
PPTX
Measuring performance - Velocity 2016 Training
PPTX
Image optimization
PPTX
Google I/O 2012 - Protecting your user experience while integrating 3rd party...
PDF
Velocity 2012 - Taming the Mobile Beast
PDF
Frontend SPOF
PPT
Web performance testing
PPT
Hands on performance testing and analysis with web pagetest
Resource Prioritization
HTTP/2 Prioritization
Getting the most out of WebPageTest
Http2 in practice
Resource loading, prioritization, HTTP/2 - oh my!
How fast is it?
Machine Learning RUM - Velocity 2016
TLS - 2016 Velocity Training
Service workers - Velocity 2016 Training
Measuring performance - Velocity 2016 Training
Image optimization
Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Velocity 2012 - Taming the Mobile Beast
Frontend SPOF
Web performance testing
Hands on performance testing and analysis with web pagetest

Recently uploaded (20)

PDF
Machine learning based COVID-19 study performance prediction
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Empathic Computing: Creating Shared Understanding
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
cuic standard and advanced reporting.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Approach and Philosophy of On baking technology
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Electronic commerce courselecture one. Pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Machine learning based COVID-19 study performance prediction
Chapter 3 Spatial Domain Image Processing.pdf
sap open course for s4hana steps from ECC to s4
Empathic Computing: Creating Shared Understanding
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
cuic standard and advanced reporting.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Approach and Philosophy of On baking technology
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
NewMind AI Weekly Chronicles - August'25 Week I
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Building Integrated photovoltaic BIPV_UPV.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Electronic commerce courselecture one. Pdf
The AUB Centre for AI in Media Proposal.docx
Unlocking AI with Model Context Protocol (MCP)
Review of recent advances in non-invasive hemoglobin estimation
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx

Making the web faster