Tips for Optimizing Web Performance

17
Tips for Optimizing Web Performance Nick Kephart, Director of Product Marketing Dave Fraleigh, VP of Customer Success

Transcript of Tips for Optimizing Web Performance

Page 1: Tips for Optimizing Web Performance

Tips for Optimizing Web Performance

Nick Kephart, Director of Product Marketing Dave Fraleigh, VP of Customer Success

Page 2: Tips for Optimizing Web Performance

1

•  Radically simplify how organizations troubleshoot, monitor and analyze performance for modern networks

ThousandEyes Overview

•  15 in the Fortune 500, including 3 of top 5 firms •  4 of top 6 US financials; 6 of top 10 SaaS firms

Mission

Customers

•  Founding team with network research background Company

Recognition

Page 3: Tips for Optimizing Web Performance

2

•  HTTP request and response without a browser

•  Measures errors by type

‘HTTP Server’ tests

Options for Measuring Web Performance

•  One or a series of page loads

•  With user interactions (forms, clicks, etc.)

‘Web Transaction’ tests

Web Server Transactions

•  Page load in a web browser

•  Each object on the page is loaded

‘Page Load’ tests

Page Load

Page 4: Tips for Optimizing Web Performance

3

•  HTTP Server –  DNS time –  Connect time –  SSL time –  Wait time –  Receive time –  Response time –  Fetch time

•  Page Load –  Response time –  DOM load time –  Page load time

•  Transaction –  Transaction duration

HTTP Server, Page Load and Transaction Tests

Page 5: Tips for Optimizing Web Performance

4

•  Objects that don’t load (errors)

•  Multiple objects per domain (blocked time)

•  Latency by provider (connection time)

•  Server congestion, app optimization (wait time)

•  Wire size, throughput (receive time)

The Importance of Individual Objects

receive

blocked

wait

Page 6: Tips for Optimizing Web Performance

5

•  Measure response time and throughput by domain and provider

•  Alert by domain •  Track performance of: –  CDNs –  Ad networks –  Fonts –  Scripts –  Images and media –  Marketing and analytics pixels –  External data sources

Understanding Third Party and CDN Performance

Akamai

Omniture, Event tracking

Root, Fonts

Page 7: Tips for Optimizing Web Performance

6

•  Use the ThousandEyes recorder!

•  Get familiar with Selenium commands1 (release 1.0) and Xpath syntax2

•  Do a dry run using instant tests

Recording Web Transactions

1 http://www.seleniumhq.org/docs/02_selenium_ide.jsp#commonly-used-selenium-commands 2 http://www.w3schools.com/xpath/xpath_syntax.asp

Page 8: Tips for Optimizing Web Performance

7

Visibility Across Networks

Hosting / SaaS Provider

Consumers

Enterprise Agents

1 WAN: ERP, email, intranet, VoIP, UC, MPLS

Internet

2SaaS: CRM, email, ITSM, collaboration, HR, finance

Cloud Agent

3External-facing: websites, APIs, mobile, SaaS, routing, DNS, DDoS, CDN

Enterprise Data Center

Enterprise Branch Office

Page 9: Tips for Optimizing Web Performance

8

q Adjust the timeout and target times q  Timeout is the maximum completion time, target time affects alerts

q Configure the start and stop steps q  Repeat steps if you want to compare cached and uncached results

q Clear your cookies (incognito) when recording transactions q  This will match how the agents run the transactions

q Use Xpath where possible q  Will reduce the frequency that your transactions break

q Beware of dynamic IDs from frameworks such as ExtJS q  For pages with dynamic IDs, use component text, labels or the

sequence of the component

Tips for Writing Web Transactions That Work!

Page 10: Tips for Optimizing Web Performance

Demo

Page 11: Tips for Optimizing Web Performance

10

Creating a Page Load Test

Set the page URL Choose intervals (HTTP runs availability and network tests)

Select alerts

Views that are included

Page 12: Tips for Optimizing Web Performance

11

Page Load Results

See response time and throughput by domain and provider

Select an agent to see the waterfall

Jump to network layers

Page 13: Tips for Optimizing Web Performance

12

Component-Specific Alerts

Customize by components

Duplicate rule

Page 14: Tips for Optimizing Web Performance

13

Creating a Transaction Test

Choose the base URL

Import from the Recorder or your own Selenium script

Transaction tests don’t include network tests; create an HTTP Server test as well

Adjust start and end

Page 15: Tips for Optimizing Web Performance

14

Use Instant Tests to Fine Tune Your Script

Test from a single agent

Ensure it completes

If not, find the failure step and modify

Select your script that you uploaded

Page 16: Tips for Optimizing Web Performance

15

Transaction Results

Toggle between metrics

Timing by step and page

Select an agent to see the page load waterfalls

Page 17: Tips for Optimizing Web Performance

16

View the Live Demo http://www.thousandeyes.com/lp/

web-performance-webinar