SlideShare a Scribd company logo
1 of 60
Download to read offline
SYNTHETIC AND RUM 
BEST OF BOTH WORLDS
Mark Zeman 
@SpeedCurve 
Cliff Crocker 
@cliffcrocker
ACTIVE 
MONITORING 
• Simulated health-checks of 
the system and it’s parts 
• Scripted journeys through 
an application 
• “Creation” of a singular or 
set of events and/or 
actions 
• Synthetic is a form of 
active monitoring AP Photo/ Eric Risberg
PASSIVE 
MONITORING 
• Listening to actual traffic as 
it moves through a system 
• Observing behavior of the 
system and/or its operator 
• “Measurement” of actions 
or events 
• RUM is a form of passive 
monitoring
Our focus is on the experience of the crowd 
allhumorpic.com
What is RUM? 
RUM 101 
Real User User Measurement Measurement (traditional (RUM) definition) 
is a technology for collecting 
performance metrics directly from the browser of an end user. 
• Involves instrumentation of your website via JavaScript 
• Measurements are fired across the network to a collection point through 
a small request object (beacon) 
<JS> <beacon>
THE GOOD PARTS - RUM 
• Always on 
• Every user, every browser, every network, anywhere in 
the world 
• Ability to capture human behavior/events with 
performance data 
• Only getting better (waterfalls)
What is RUM? 
Real User Measurement (traditional definition) 
Synthetic 101 
Synthetic monitoring (for purposes of this discussion) refers to the 
use of automated agents (bots) to measure your website from 
different physical locations. 
• A set ‘path’ or URL is defined 
• Tests are run either adhoc or scheduled and data is collected
THE GOOD PARTS - SYNTHETIC 
• Rich data collected (waterfall, videos/filmstrip, HTTP 
Headers) 
• Consistent “clean room” baseline 
• Nothing to install 
• Doesn’t require users/ability to measure pre-production, 
competition
COMMON THINGS WE HEAR ABOUT 
BOTH RUM AND SYNTHETIC 
• “Why are these numbers so different?” 
• “I don’t trust your data. Your numbers are wrong.” 
• “How are you calculating Page Load time?” 
• “I can’t share two sets of numbers with the business.”
WHY ARE THE TWO NUMBERS SO FAR OFF? 
Real users are not normal
Page Load Times 
All Countries, User Agents, Carriers, Operating Systems 
3.23s – Median
Page Load Times 
All Countries, User Agents, Carriers, Operating Systems 
10.45s – p95
Page Load Times 
All Countries, User Agents, Carriers, Operating Systems 
17.26s – p98
Page Load Times 
By Operating System 
OS Median 95th Percentile 98th Percentile 
Windows 7 2.41s 9.29s 15.89s 
Mac OS X/10 2.30s 8.11s 13.45s 
iOS7 3.27s 10.64s 15.79s 
Android 4 4.06s 14.30s 27.93s 
iOS8 3.53s 11.54s 19.72s 
Windows 8 2.67s 10.75s 18.74s
WHY ARE THE TWO NUMBERS SO FAR OFF? 
Median: 3.23s 
RUM 
SYNTHETIC 
FIRST 
SYNTHETIC 
REPEAT 
3 . 2 3 4 . 1 2 . 2 
0 1 2 3 5 6 7 8 9 10 11 12 14 15 16 17 18 19
“BUT, IT LOADS SO MUCH FASTER FOR ME??!!” 
4 seconds 20 seconds 
• 2015 Macbook Pro 
• Warm browser cache 
• FIOS 
vs. 
• x86 - Windows 7 VM 
• Completely cold cache/dns 
• Throttled bandwidth
RUM SYNTHETIC 
• Primary source of 
truth 
• User behavior/ 
conversion 
• Complete coverage 
• Diagnostics 
• Page Construction 
• Pre-production & 
Competitive 
benchmarking
RUM SYNTHETIC 
• Primary source of 
truth 
• User behavior/ 
conversion 
• Complete coverage 
• Diagnostics 
• Page Construction 
• Pre-production & 
Competitive 
benchmarking 
You need both
START RENDER 
1.58S 
DNS 
110MS 
TCP 
40MS 
TTFB 
650MS 
DOM LOADING 
680MS 
DOM READY 
2.75S 
PAGE LOAD 
3.05 
FULLY LOADED 
19.68S 
USER TIMING 
1.95S 
RESOURCE 
TIMING 
237MS 
REQUESTS 
116 
BYTES IN 
2,143KB 
SPEED INDEX 
3086 
PAGESPEED 
SCORE 
83 
1S=$27M 
DOM 
ELEMENTS 
3931 
DOM SIZE 
3,143KB 
VISUALLY 
COMPLETE 
15.2S 
REDIRECT 
0S 
S S L 
NEGOTIATION 
93MS 
THIS IS YOUR “ONE NUMBER”
THE MANY FACES OF PERFORMANCE 
C-Level Operations Developer Designer 
thenounproject.com
START RENDER DNS TCP TTFB 
DOM LOADING DOM READY PAGE LOAD FULLY LOADED 
USER TIMING 
RESOURCE 
TIMING 
REQUESTS BYTES IN 
SPEED INDEX 
PAGESPEED 
SCORE 
1S=$$ 
DOM 
ELEMENTS 
DOM SIZE 
VISUALLY 
COMPLETE 
REDIRECT 
S S L 
NEGOTIATION 
START RENDER DNS TCP TTFB 
DOM LOADING DOM READY PAGE LOAD FULLY LOADED 
USER TIMING 
RESOURCE 
TIMING 
REQUESTS BYTES IN 
SPEED INDEX 
PAGESPEED 
SCORE 
1S=$$ 
DOM 
ELEMENTS 
DOM SIZE 
VISUALLY 
COMPLETE 
REDIRECT 
S S L 
NEGOTIATION 
START RENDER DNS TCP TTFB 
DOM LOADING DOM READY PAGE LOAD FULLY LOADED 
USER TIMING 
RESOURCE 
TIMING 
REQUESTS BYTES IN 
SPEED INDEX 
PAGESPEED 
SCORE 
1S=$$ 
DOM 
ELEMENTS 
DOM SIZE 
VISUALLY 
COMPLETE 
REDIRECT 
S S L 
NEGOTIATION 
START RENDER DNS TCP TTFB 
DOM LOADING DOM READY PAGE LOAD FULLY LOADED 
USER TIMING 
RESOURCE 
TIMING 
REQUESTS BYTES IN 
SPEED INDEX 
PAGESPEED 
SCORE 
1S=$$ 
DOM 
ELEMENTS 
DOM SIZE 
VISUALLY 
COMPLETE 
REDIRECT 
S S L 
NEGOTIATION
START RENDER 
1.58S 
DNS 
110MS 
TCP 
40MS 
TTFB 
DOM LOADING 6 5 0MS 
680MS 
DOM READY 
2.75S 
PAGE LOAD 
3.05 
FULLY LOADED 
US E R T IMING 1 9 . 6 8 S 
1.95S 
RESOURCE TIMING 
237MS 
REQUESTS 
116 
BYTES IN 
S P E ED INDE X 2 , 1 4 3KB 
3086 
PAGESPEED SCORE 
83 
1S=$27M DOM ELEMENTS 
DOM S I Z E VIZ COMPLETE 
REDIRECT 
3 9 3 1 
3,143KB 
15.2S 
0S 
SSL NEGOTIATION 
93MS 
Analysis
START RENDER 
1.58S 
DNS 
110MS 
TCP 
40MS 
TTFB 
DOM LOADING 6 5 0MS 
680MS 
DOM READY 
2.75S 
PAGE LOAD 
3.05 
FULLY LOADED 
US E R T IMING 1 9 . 6 8 S 
1.95S 
RESOURCE TIMING 
237MS 
REQUESTS 
116 
BYTES IN 
S P E ED INDE X 2 , 1 4 3KB 
3086 
PAGESPEED SCORE 
83 
1S=$27M DOM ELEMENTS 
DOM S I Z E VIZ COMPLETE 
REDIRECT 
3 9 3 1 
3,143KB 
15.2S 
0S 
SSL NEGOTIATION 
93MS 
Analysis
“What is the right number for me to communicate to the 
organization?” 
– CTO
REALISTICALLY, THERE IS NOT ONE NUMBER 
1s=$27M Page Load 
3.05s 
Start Render 
1.58s 
Speed Index 
3086
“How is site performance impacting revenue?” 
– CEO
TOP OF FUNNEL IMPACT (BROWSE PAGES) 
NOT ALL PAGES ARE CREATED EQUAL 
For a typical 
eCommerce site, 
conversion rate 
drops by up to 50% 
when “browse” 
pages increase from 
1 to 6 seconds
BOTTOM OF FUNNEL IMPACT (CHECKOUT PAGES) 
NOT ALL PAGES ARE CREATED EQUAL 
However, there is 
much less impact 
to conversion 
when “checkout” 
pages degrade
HOW FAST SHOULD I BE? 
1s = $27M
“How do we compare to the competition?” 
– CEO
“How is our site doing in Spain? Are we winning there?” 
– CEO
SITE PERFORMANCE - SPAIN 
• Represents 1% of our overall traffic 
• 3rd overall in our competitive index 
3.91s Competitive Index 
Site 1 Site 2 Site 3 Site 4 Site 5
“How are third parties impacting my site?” 
– VP ECOMMERCE
Domains 
3RD PARTY STUDY - UNIQUE DOMAINS PER PAGE 
Alexa Top 25 Retail 
31 
10 
35 
23 
86 
41 
20 
37 
31 30 31 
4 
48 
38 
42 
16 
11 
6 
28 
68 
31 
36 
4 
8 19 
2 1 2 
5 
3 3 1 
5 
2 2 1 1 
5 
3 2 3 4 2 3 
5 
1 
7 
3 
7 
17 
Primary domains 3rd Party domains 
Domains: 
Median - 32 
Min - 25 
Max - 87
91% 
9% 
91% of domains 
are 3rd parties 
3RD PARTY STUDY
HUFFINGTON POST - THIRD PART Y 
IMPACT USING PETTY CASH
SETTING MEANINGFUL SLAS 
Example SLA: Response time measured using resource timing 
from Chrome browsers in the United States should not exceed a 
median (50th percentile) of 100ms or a 95th percentile of 500ms 
for a population of more than 500 users in a 24 hour period
“How should I measure my site in pre-production?” 
– FRONT END DEVELOPER
“Should I optimize my site for mobile?” 
– VP ECOMMERCE
Page Load Times 
Desktop vs. Mobile (Mobile and Tablet Optimized) 
Platform Median 95th Percentile 98th Percentile 
Mobile 3.62s 12.53s 20.04s 
Desktop 2.44s 9.31s 15.86s
Page Load Times 
Desktop vs. Mobile (Full site on Tablet) 
Platform Median 95th Percentile 98th Percentile 
Mobile 4.70s 17.87s 34.43s 
Desktop 3.81s 25.15 55.34s 
0 1.5 3 4.5 6 7.5 9 10.5 12 13.5 15 16.5 18 19.5
3530 3530 
IMG 
JS 
CSS 
320 1024 1366 1920
768 1280 
1770 
637 
IMG 
JS 
320 1920
“How can I determine the effectiveness of my CDN 
provider?” 
– OPERATIONS
WHICH SITE IS USING A CDN? 
Site A Site B
“How has page construction changed over the last month, 
and what impact has that had on performance?” 
– FRONT END DEVELOPER
“What is the performance of my single page web 
application?” 
– FRONT END DEVELOPER
THE CHALLENGE OF SINGLE-PAGE 
APPLICATIONS 
• Challenges with synthetic: Only measure first page 
load, not feasible to measure secondary loads via XHR 
• Challenges with RUM: Determining whether call is a 
“page” or service call;Risk of diluting overall numbers
“How do I know how fast my page becomes usable?” 
– DESIGNER
Start Render Loaded 
Usable
• Other questions?
SUMMARY 
• You need rich sets of data 
• There is not one number 
• Choose the right number(s) for the right audience

More Related Content

What's hot

An introduction to Reactive applications, Reactive Streams, and options for t...
An introduction to Reactive applications, Reactive Streams, and options for t...An introduction to Reactive applications, Reactive Streams, and options for t...
An introduction to Reactive applications, Reactive Streams, and options for t...
Steve Pember
 
Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010
Thoughtworks
 

What's hot (20)

Performance: Key Elements to Consider in the Cloud - RightScale Compute 2013
Performance: Key Elements to Consider in the Cloud - RightScale Compute 2013Performance: Key Elements to Consider in the Cloud - RightScale Compute 2013
Performance: Key Elements to Consider in the Cloud - RightScale Compute 2013
 
Building a slack bot
Building a slack botBuilding a slack bot
Building a slack bot
 
5 Cloud Migration Experiences Not to Be Repeated
5 Cloud Migration Experiences Not to Be Repeated5 Cloud Migration Experiences Not to Be Repeated
5 Cloud Migration Experiences Not to Be Repeated
 
Hidden Costs of Chasing the Mythical 'Five Nines'
Hidden Costs of Chasing the Mythical 'Five Nines'Hidden Costs of Chasing the Mythical 'Five Nines'
Hidden Costs of Chasing the Mythical 'Five Nines'
 
Site reliability engineering
Site reliability engineeringSite reliability engineering
Site reliability engineering
 
An introduction to Reactive applications, Reactive Streams, and options for t...
An introduction to Reactive applications, Reactive Streams, and options for t...An introduction to Reactive applications, Reactive Streams, and options for t...
An introduction to Reactive applications, Reactive Streams, and options for t...
 
Edge 2014: Increasing Control with Property Manager with eBay
Edge 2014: Increasing Control with Property Manager with eBayEdge 2014: Increasing Control with Property Manager with eBay
Edge 2014: Increasing Control with Property Manager with eBay
 
Traffic Control with Envoy Proxy
Traffic Control with Envoy ProxyTraffic Control with Envoy Proxy
Traffic Control with Envoy Proxy
 
DR in the Cloud: Finding the Right Tool for the Job
DR in the Cloud: Finding the Right Tool for the JobDR in the Cloud: Finding the Right Tool for the Job
DR in the Cloud: Finding the Right Tool for the Job
 
Customer-centric Metrics
Customer-centric MetricsCustomer-centric Metrics
Customer-centric Metrics
 
Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010
 
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyDevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
 
Protecting Against Disaster: Plan for the Inevitable Before it Happens
Protecting Against Disaster: Plan for the Inevitable Before it HappensProtecting Against Disaster: Plan for the Inevitable Before it Happens
Protecting Against Disaster: Plan for the Inevitable Before it Happens
 
Creating Modern Metadata Systems [FutureStack16 NYC]
Creating Modern Metadata Systems [FutureStack16 NYC]Creating Modern Metadata Systems [FutureStack16 NYC]
Creating Modern Metadata Systems [FutureStack16 NYC]
 
Scaling the guardian
Scaling the guardianScaling the guardian
Scaling the guardian
 
JOSA TechTalk - Lambda architecture and real-time processing
JOSA TechTalk - Lambda architecture and real-time processingJOSA TechTalk - Lambda architecture and real-time processing
JOSA TechTalk - Lambda architecture and real-time processing
 
Find and Fix Performance Bottlenecks with New Relic and BlazeMeter
Find and Fix Performance Bottlenecks with New Relic and BlazeMeter Find and Fix Performance Bottlenecks with New Relic and BlazeMeter
Find and Fix Performance Bottlenecks with New Relic and BlazeMeter
 
MWLUG 2017 SA110
MWLUG 2017 SA110MWLUG 2017 SA110
MWLUG 2017 SA110
 
Building and Scaling a WebSockets Pubsub System
Building and Scaling a WebSockets Pubsub SystemBuilding and Scaling a WebSockets Pubsub System
Building and Scaling a WebSockets Pubsub System
 
Continuous database deployment
Continuous database deploymentContinuous database deployment
Continuous database deployment
 

Similar to Synthetic and RUM - Best of bo

Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward
 
Why and how to leverage the simplicity and power of SQL on Flink
Why and how to leverage the simplicity and power of SQL on FlinkWhy and how to leverage the simplicity and power of SQL on Flink
Why and how to leverage the simplicity and power of SQL on Flink
DataWorks Summit
 
How to stop fingerpointing when your application is down
How to stop fingerpointing when your application is downHow to stop fingerpointing when your application is down
How to stop fingerpointing when your application is down
Compuware ASEAN
 

Similar to Synthetic and RUM - Best of bo (20)

Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance Monitoring
 
Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)
 
Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)
 
Synthetic and rum webinar
Synthetic and rum webinarSynthetic and rum webinar
Synthetic and rum webinar
 
Synthetic and RUM: A Recipe for Web Performance Success
Synthetic and RUM: A Recipe for Web Performance SuccessSynthetic and RUM: A Recipe for Web Performance Success
Synthetic and RUM: A Recipe for Web Performance Success
 
Concord: Simple & Flexible Stream Processing on Apache Mesos: Data By The Bay...
Concord: Simple & Flexible Stream Processing on Apache Mesos: Data By The Bay...Concord: Simple & Flexible Stream Processing on Apache Mesos: Data By The Bay...
Concord: Simple & Flexible Stream Processing on Apache Mesos: Data By The Bay...
 
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 - 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!
 
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
 
Solving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 PeopleSolving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 People
 
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
 
Real User Monitoring (RUM)
Real User Monitoring (RUM)Real User Monitoring (RUM)
Real User Monitoring (RUM)
 
Concept to production Nationwide Insurance BigInsights Journey with Telematics
Concept to production Nationwide Insurance BigInsights Journey with TelematicsConcept to production Nationwide Insurance BigInsights Journey with Telematics
Concept to production Nationwide Insurance BigInsights Journey with Telematics
 
Site Speed Fundamentals
Site Speed FundamentalsSite Speed Fundamentals
Site Speed Fundamentals
 
Why and how to leverage the simplicity and power of SQL on Flink
Why and how to leverage the simplicity and power of SQL on FlinkWhy and how to leverage the simplicity and power of SQL on Flink
Why and how to leverage the simplicity and power of SQL on Flink
 
Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics Hero
 
Starting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for OpsStarting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for Ops
 
Gomez
GomezGomez
Gomez
 
improving the performance of Rails web Applications
improving the performance of Rails web Applicationsimproving the performance of Rails web Applications
improving the performance of Rails web Applications
 
How to stop fingerpointing when your application is down
How to stop fingerpointing when your application is downHow to stop fingerpointing when your application is down
How to stop fingerpointing when your application is down
 

More from Cliff Crocker (6)

Walmart Web Performance Circa 2013
Walmart Web Performance Circa 2013Walmart Web Performance Circa 2013
Walmart Web Performance Circa 2013
 
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
 
Velocity NY 2014 - The Natives are Getting Restless
Velocity NY 2014 - The Natives are Getting RestlessVelocity NY 2014 - The Natives are Getting Restless
Velocity NY 2014 - The Natives are Getting Restless
 
Managing the unmanageable - Third Party RUM
Managing the unmanageable - Third Party RUMManaging the unmanageable - Third Party RUM
Managing the unmanageable - Third Party RUM
 
Rum first london web perf meetup
Rum first   london web perf meetupRum first   london web perf meetup
Rum first london web perf meetup
 
"Rum First" NYC Webperf Meetup
"Rum First" NYC Webperf Meetup"Rum First" NYC Webperf Meetup
"Rum First" NYC Webperf Meetup
 

Recently uploaded

一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样
一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样
一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样
ayvbos
 
Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...
Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...
Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...
mikehavy0
 
一比一原版贝德福特大学毕业证学位证书
一比一原版贝德福特大学毕业证学位证书一比一原版贝德福特大学毕业证学位证书
一比一原版贝德福特大学毕业证学位证书
F
 
一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理
F
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
ayvbos
 
一比一原版英国格林多大学毕业证如何办理
一比一原版英国格林多大学毕业证如何办理一比一原版英国格林多大学毕业证如何办理
一比一原版英国格林多大学毕业证如何办理
AS
 
如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证
如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证
如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证
hfkmxufye
 
一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理
F
 
原版定制英国赫瑞瓦特大学毕业证原件一模一样
原版定制英国赫瑞瓦特大学毕业证原件一模一样原版定制英国赫瑞瓦特大学毕业证原件一模一样
原版定制英国赫瑞瓦特大学毕业证原件一模一样
AS
 
一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理
F
 
一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样
一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样
一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样
AS
 
一比一原版美国北卡罗莱纳大学毕业证如何办理
一比一原版美国北卡罗莱纳大学毕业证如何办理一比一原版美国北卡罗莱纳大学毕业证如何办理
一比一原版美国北卡罗莱纳大学毕业证如何办理
A
 

Recently uploaded (20)

Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.
 
一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样
一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样
一比一原版(USYD毕业证书)悉尼大学毕业证原件一模一样
 
Research Assignment - NIST SP800 [172 A] - Presentation.pptx
Research Assignment - NIST SP800 [172 A] - Presentation.pptxResearch Assignment - NIST SP800 [172 A] - Presentation.pptx
Research Assignment - NIST SP800 [172 A] - Presentation.pptx
 
Lowongan Kerja LC Yogyakarta Terbaru 085746015303
Lowongan Kerja LC Yogyakarta Terbaru 085746015303Lowongan Kerja LC Yogyakarta Terbaru 085746015303
Lowongan Kerja LC Yogyakarta Terbaru 085746015303
 
Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...
Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...
Abortion Clinic in Germiston +27791653574 WhatsApp Abortion Clinic Services i...
 
一比一原版贝德福特大学毕业证学位证书
一比一原版贝德福特大学毕业证学位证书一比一原版贝德福特大学毕业证学位证书
一比一原版贝德福特大学毕业证学位证书
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
 
[Hackersuli] Élő szövet a fémvázon: Python és gépi tanulás a Zeek platformon
[Hackersuli] Élő szövet a fémvázon: Python és gépi tanulás a Zeek platformon[Hackersuli] Élő szövet a fémvázon: Python és gépi tanulás a Zeek platformon
[Hackersuli] Élő szövet a fémvázon: Python és gépi tanulás a Zeek platformon
 
一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
 
一比一原版英国格林多大学毕业证如何办理
一比一原版英国格林多大学毕业证如何办理一比一原版英国格林多大学毕业证如何办理
一比一原版英国格林多大学毕业证如何办理
 
如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证
如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证
如何办理(UCLA毕业证)加州大学洛杉矶分校毕业证成绩单本科硕士学位证留信学历认证
 
一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理
 
原版定制英国赫瑞瓦特大学毕业证原件一模一样
原版定制英国赫瑞瓦特大学毕业证原件一模一样原版定制英国赫瑞瓦特大学毕业证原件一模一样
原版定制英国赫瑞瓦特大学毕业证原件一模一样
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
 
APNIC Updates presented by Paul Wilson at CaribNOG 27
APNIC Updates presented by Paul Wilson at  CaribNOG 27APNIC Updates presented by Paul Wilson at  CaribNOG 27
APNIC Updates presented by Paul Wilson at CaribNOG 27
 
Down bad crying at the gym t shirtsDown bad crying at the gym t shirts
Down bad crying at the gym t shirtsDown bad crying at the gym t shirtsDown bad crying at the gym t shirtsDown bad crying at the gym t shirts
Down bad crying at the gym t shirtsDown bad crying at the gym t shirts
 
一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理
 
一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样
一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样
一比一原版(Polytechnic毕业证书)新加坡理工学院毕业证原件一模一样
 
一比一原版美国北卡罗莱纳大学毕业证如何办理
一比一原版美国北卡罗莱纳大学毕业证如何办理一比一原版美国北卡罗莱纳大学毕业证如何办理
一比一原版美国北卡罗莱纳大学毕业证如何办理
 

Synthetic and RUM - Best of bo

  • 1. SYNTHETIC AND RUM BEST OF BOTH WORLDS
  • 2. Mark Zeman @SpeedCurve Cliff Crocker @cliffcrocker
  • 3. ACTIVE MONITORING • Simulated health-checks of the system and it’s parts • Scripted journeys through an application • “Creation” of a singular or set of events and/or actions • Synthetic is a form of active monitoring AP Photo/ Eric Risberg
  • 4. PASSIVE MONITORING • Listening to actual traffic as it moves through a system • Observing behavior of the system and/or its operator • “Measurement” of actions or events • RUM is a form of passive monitoring
  • 5. Our focus is on the experience of the crowd allhumorpic.com
  • 6. What is RUM? RUM 101 Real User User Measurement Measurement (traditional (RUM) definition) is a technology for collecting performance metrics directly from the browser of an end user. • Involves instrumentation of your website via JavaScript • Measurements are fired across the network to a collection point through a small request object (beacon) <JS> <beacon>
  • 7. THE GOOD PARTS - RUM • Always on • Every user, every browser, every network, anywhere in the world • Ability to capture human behavior/events with performance data • Only getting better (waterfalls)
  • 8. What is RUM? Real User Measurement (traditional definition) Synthetic 101 Synthetic monitoring (for purposes of this discussion) refers to the use of automated agents (bots) to measure your website from different physical locations. • A set ‘path’ or URL is defined • Tests are run either adhoc or scheduled and data is collected
  • 9. THE GOOD PARTS - SYNTHETIC • Rich data collected (waterfall, videos/filmstrip, HTTP Headers) • Consistent “clean room” baseline • Nothing to install • Doesn’t require users/ability to measure pre-production, competition
  • 10. COMMON THINGS WE HEAR ABOUT BOTH RUM AND SYNTHETIC • “Why are these numbers so different?” • “I don’t trust your data. Your numbers are wrong.” • “How are you calculating Page Load time?” • “I can’t share two sets of numbers with the business.”
  • 11. WHY ARE THE TWO NUMBERS SO FAR OFF? Real users are not normal
  • 12. Page Load Times All Countries, User Agents, Carriers, Operating Systems 3.23s – Median
  • 13. Page Load Times All Countries, User Agents, Carriers, Operating Systems 10.45s – p95
  • 14. Page Load Times All Countries, User Agents, Carriers, Operating Systems 17.26s – p98
  • 15. Page Load Times By Operating System OS Median 95th Percentile 98th Percentile Windows 7 2.41s 9.29s 15.89s Mac OS X/10 2.30s 8.11s 13.45s iOS7 3.27s 10.64s 15.79s Android 4 4.06s 14.30s 27.93s iOS8 3.53s 11.54s 19.72s Windows 8 2.67s 10.75s 18.74s
  • 16. WHY ARE THE TWO NUMBERS SO FAR OFF? Median: 3.23s RUM SYNTHETIC FIRST SYNTHETIC REPEAT 3 . 2 3 4 . 1 2 . 2 0 1 2 3 5 6 7 8 9 10 11 12 14 15 16 17 18 19
  • 17. “BUT, IT LOADS SO MUCH FASTER FOR ME??!!” 4 seconds 20 seconds • 2015 Macbook Pro • Warm browser cache • FIOS vs. • x86 - Windows 7 VM • Completely cold cache/dns • Throttled bandwidth
  • 18. RUM SYNTHETIC • Primary source of truth • User behavior/ conversion • Complete coverage • Diagnostics • Page Construction • Pre-production & Competitive benchmarking
  • 19. RUM SYNTHETIC • Primary source of truth • User behavior/ conversion • Complete coverage • Diagnostics • Page Construction • Pre-production & Competitive benchmarking You need both
  • 20. START RENDER 1.58S DNS 110MS TCP 40MS TTFB 650MS DOM LOADING 680MS DOM READY 2.75S PAGE LOAD 3.05 FULLY LOADED 19.68S USER TIMING 1.95S RESOURCE TIMING 237MS REQUESTS 116 BYTES IN 2,143KB SPEED INDEX 3086 PAGESPEED SCORE 83 1S=$27M DOM ELEMENTS 3931 DOM SIZE 3,143KB VISUALLY COMPLETE 15.2S REDIRECT 0S S S L NEGOTIATION 93MS THIS IS YOUR “ONE NUMBER”
  • 21. THE MANY FACES OF PERFORMANCE C-Level Operations Developer Designer thenounproject.com
  • 22. START RENDER DNS TCP TTFB DOM LOADING DOM READY PAGE LOAD FULLY LOADED USER TIMING RESOURCE TIMING REQUESTS BYTES IN SPEED INDEX PAGESPEED SCORE 1S=$$ DOM ELEMENTS DOM SIZE VISUALLY COMPLETE REDIRECT S S L NEGOTIATION START RENDER DNS TCP TTFB DOM LOADING DOM READY PAGE LOAD FULLY LOADED USER TIMING RESOURCE TIMING REQUESTS BYTES IN SPEED INDEX PAGESPEED SCORE 1S=$$ DOM ELEMENTS DOM SIZE VISUALLY COMPLETE REDIRECT S S L NEGOTIATION START RENDER DNS TCP TTFB DOM LOADING DOM READY PAGE LOAD FULLY LOADED USER TIMING RESOURCE TIMING REQUESTS BYTES IN SPEED INDEX PAGESPEED SCORE 1S=$$ DOM ELEMENTS DOM SIZE VISUALLY COMPLETE REDIRECT S S L NEGOTIATION START RENDER DNS TCP TTFB DOM LOADING DOM READY PAGE LOAD FULLY LOADED USER TIMING RESOURCE TIMING REQUESTS BYTES IN SPEED INDEX PAGESPEED SCORE 1S=$$ DOM ELEMENTS DOM SIZE VISUALLY COMPLETE REDIRECT S S L NEGOTIATION
  • 23. START RENDER 1.58S DNS 110MS TCP 40MS TTFB DOM LOADING 6 5 0MS 680MS DOM READY 2.75S PAGE LOAD 3.05 FULLY LOADED US E R T IMING 1 9 . 6 8 S 1.95S RESOURCE TIMING 237MS REQUESTS 116 BYTES IN S P E ED INDE X 2 , 1 4 3KB 3086 PAGESPEED SCORE 83 1S=$27M DOM ELEMENTS DOM S I Z E VIZ COMPLETE REDIRECT 3 9 3 1 3,143KB 15.2S 0S SSL NEGOTIATION 93MS Analysis
  • 24. START RENDER 1.58S DNS 110MS TCP 40MS TTFB DOM LOADING 6 5 0MS 680MS DOM READY 2.75S PAGE LOAD 3.05 FULLY LOADED US E R T IMING 1 9 . 6 8 S 1.95S RESOURCE TIMING 237MS REQUESTS 116 BYTES IN S P E ED INDE X 2 , 1 4 3KB 3086 PAGESPEED SCORE 83 1S=$27M DOM ELEMENTS DOM S I Z E VIZ COMPLETE REDIRECT 3 9 3 1 3,143KB 15.2S 0S SSL NEGOTIATION 93MS Analysis
  • 25. “What is the right number for me to communicate to the organization?” – CTO
  • 26. REALISTICALLY, THERE IS NOT ONE NUMBER 1s=$27M Page Load 3.05s Start Render 1.58s Speed Index 3086
  • 27. “How is site performance impacting revenue?” – CEO
  • 28.
  • 29.
  • 30. TOP OF FUNNEL IMPACT (BROWSE PAGES) NOT ALL PAGES ARE CREATED EQUAL For a typical eCommerce site, conversion rate drops by up to 50% when “browse” pages increase from 1 to 6 seconds
  • 31. BOTTOM OF FUNNEL IMPACT (CHECKOUT PAGES) NOT ALL PAGES ARE CREATED EQUAL However, there is much less impact to conversion when “checkout” pages degrade
  • 32. HOW FAST SHOULD I BE? 1s = $27M
  • 33. “How do we compare to the competition?” – CEO
  • 34.
  • 35.
  • 36. “How is our site doing in Spain? Are we winning there?” – CEO
  • 37. SITE PERFORMANCE - SPAIN • Represents 1% of our overall traffic • 3rd overall in our competitive index 3.91s Competitive Index Site 1 Site 2 Site 3 Site 4 Site 5
  • 38. “How are third parties impacting my site?” – VP ECOMMERCE
  • 39. Domains 3RD PARTY STUDY - UNIQUE DOMAINS PER PAGE Alexa Top 25 Retail 31 10 35 23 86 41 20 37 31 30 31 4 48 38 42 16 11 6 28 68 31 36 4 8 19 2 1 2 5 3 3 1 5 2 2 1 1 5 3 2 3 4 2 3 5 1 7 3 7 17 Primary domains 3rd Party domains Domains: Median - 32 Min - 25 Max - 87
  • 40. 91% 9% 91% of domains are 3rd parties 3RD PARTY STUDY
  • 41. HUFFINGTON POST - THIRD PART Y IMPACT USING PETTY CASH
  • 42. SETTING MEANINGFUL SLAS Example SLA: Response time measured using resource timing from Chrome browsers in the United States should not exceed a median (50th percentile) of 100ms or a 95th percentile of 500ms for a population of more than 500 users in a 24 hour period
  • 43. “How should I measure my site in pre-production?” – FRONT END DEVELOPER
  • 44.
  • 45.
  • 46. “Should I optimize my site for mobile?” – VP ECOMMERCE
  • 47. Page Load Times Desktop vs. Mobile (Mobile and Tablet Optimized) Platform Median 95th Percentile 98th Percentile Mobile 3.62s 12.53s 20.04s Desktop 2.44s 9.31s 15.86s
  • 48. Page Load Times Desktop vs. Mobile (Full site on Tablet) Platform Median 95th Percentile 98th Percentile Mobile 4.70s 17.87s 34.43s Desktop 3.81s 25.15 55.34s 0 1.5 3 4.5 6 7.5 9 10.5 12 13.5 15 16.5 18 19.5
  • 49. 3530 3530 IMG JS CSS 320 1024 1366 1920
  • 50. 768 1280 1770 637 IMG JS 320 1920
  • 51. “How can I determine the effectiveness of my CDN provider?” – OPERATIONS
  • 52. WHICH SITE IS USING A CDN? Site A Site B
  • 53. “How has page construction changed over the last month, and what impact has that had on performance?” – FRONT END DEVELOPER
  • 54.
  • 55. “What is the performance of my single page web application?” – FRONT END DEVELOPER
  • 56. THE CHALLENGE OF SINGLE-PAGE APPLICATIONS • Challenges with synthetic: Only measure first page load, not feasible to measure secondary loads via XHR • Challenges with RUM: Determining whether call is a “page” or service call;Risk of diluting overall numbers
  • 57. “How do I know how fast my page becomes usable?” – DESIGNER
  • 60. SUMMARY • You need rich sets of data • There is not one number • Choose the right number(s) for the right audience