33
RUM First

"Rum First" NYC Webperf Meetup

Embed Size (px)

DESCRIPTION

RUM discussion at NYC Web Performance Meetup

Citation preview

Page 1: "Rum First" NYC Webperf Meetup

RUM First

Page 2: "Rum First" NYC Webperf Meetup

Who I Am

Cliff Crocker

VP Product

SOASTA, Inc.

@cliffcrocker

Page 3: "Rum First" NYC Webperf Meetup

http://www.flickr.com/photos/luc/

Real Users

Page 4: "Rum First" NYC Webperf Meetup

http://www.flickr.com/photos/spullara/

Happy Users

Page 5: "Rum First" NYC Webperf Meetup

http://www.flickr.com/photos/sybrenstuvel/

Not SoHappy

Page 6: "Rum First" NYC Webperf Meetup

RUM 101Real User Measurement (RUM) is a technology for collecting performance metrics directly from the browser of an end user.

• Involves instrumentation of the page with JavaScript

• Measurements are fired across the network to a collection point through a small request object (beacon)

<JS>MySite.com

<beacon>

Page 7: "Rum First" NYC Webperf Meetup

This helped…

Page 8: "Rum First" NYC Webperf Meetup

C’mon Safari, be cool…

http://caniuse.com/nav-timing

69.34% Browser Support

Page 10: "Rum First" NYC Webperf Meetup

What gives??

No RUM

RUM • According to a study done in 2012* only 1 in 5 of the top ecommerce sites are using some form of RUM

*http://www.webperformancetoday.com/2012/11/13/real-user-monitoring-rum-ecommerce-sites/

Page 11: "Rum First" NYC Webperf Meetup

Challenges with RUM

1. It’s a “data” problem

2. People don’t like change

3. Hard to “sell” internally

Page 12: "Rum First" NYC Webperf Meetup

For a modest sized site, in a given day

1-3 Million Page Views

Perf Timing

User Agent

OS/Device

Geography

Page Segmentation

Bandwidth Classification

A/B Bucket

‘Other’

Page 13: "Rum First" NYC Webperf Meetup
Page 14: "Rum First" NYC Webperf Meetup

Many have advocated sampling…

Page 15: "Rum First" NYC Webperf Meetup

1% sample, looking at a period of about 3 hours for a given page segment (Checkout)

Filtered to the United States…

Page 16: "Rum First" NYC Webperf Meetup

Using a sampling approach

Looking only at California…

…and IE 9 traffic only

Page 17: "Rum First" NYC Webperf Meetup

Now look at a 100% sample for the same time duration

All the same filters applied – AND looking specifically at ‘Back-End’ time

Page 18: "Rum First" NYC Webperf Meetup

Sampled at 1%

Not sampled

Page 19: "Rum First" NYC Webperf Meetup

Many use a batch solution…

Page 20: "Rum First" NYC Webperf Meetup

• Batch processing large amounts of data has been a traditional approach for RUM

– Great for looking at historical data, trending, etc.

– Big Data is not necessarily Fast Data

• Not ‘Operational’

Page 21: "Rum First" NYC Webperf Meetup

In order for RUM to be operationally relevant, you need the data in real-time

Page 22: "Rum First" NYC Webperf Meetup

Synthetic vs. RUM

http://www.flickr.com/photos/myvector/

Page 23: "Rum First" NYC Webperf Meetup

It is Not Either Or

• Synthetic and RUM coexist in any performance strategy

• Great use cases for both

Page 24: "Rum First" NYC Webperf Meetup

Synthetic Monitoring

• Pros

– Technology is great

– Real Browsers (IE, Chrome, FF)

– Built in Alerting

– Waterfall analysis

– Screen shots & headers

– Object level detail

• Cons

– False Positives

– Impossible/impractical to measure everything

– Fixed number of browser/OS combinations

– Simulated bandwidth constraints at best

– Too few data points for statistical relevance

Page 25: "Rum First" NYC Webperf Meetup

RUM

Cast a wide net• Identify key areas of concern• Understand real user impact• Tie this back to $$ (next)

Synthetic

Diagnostic tool• Identify issues in a ‘lab’• Reproduce a problem found with

RUM

http://www.flickr.com/photos/84338444@N00/with/3780079044/

http://www.flickr.com/photos/ezioman/

Page 26: "Rum First" NYC Webperf Meetup

RUM in the Workplace

Page 27: "Rum First" NYC Webperf Meetup

Studies show…

Page 28: "Rum First" NYC Webperf Meetup

However, you have to look at your own data

Page 29: "Rum First" NYC Webperf Meetup

Understand your KPIs and How to Track Them

• Retail: Order Conversion, Add to Cart Conversion, Revenue

• Media: In Line Display Ad Views, Comments

• Other: Facebook likes/Social Media sharing

Page 30: "Rum First" NYC Webperf Meetup

Bottom Line, if you want your business to care – then make it relevant for

them (speak their language)

Page 31: "Rum First" NYC Webperf Meetup

Strategy for Success – RUM First

RUM First

• All the data

• Real-time and historical

Supplement with

Synthetic

• Reduce measurements based on RUM

• Use for adhocdiagnostic

Map to business

KPIs

• YOUR goals

• YOUR data

Page 32: "Rum First" NYC Webperf Meetup

Free and Open Toolsets

RUM JS Collection Visualization Synthetic

boomerang.js Stats D Graphite WebPagtest

Episodes ShowSlow SpeedCurve (beta is free?)

SOASTA mPulse, Torbit, Google Analytics, Pingdom, New Relic

Page 33: "Rum First" NYC Webperf Meetup

mPulse Litehttp://www.soasta.com/free/