how a content delivery network can help speed up your website

36
#drupalCD N How a CDN Can Help Speed Up Your Website

Upload: acquia

Post on 21-Jun-2015

2.717 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: How a Content Delivery Network Can Help Speed Up Your Website

#drupalCDN

How a CDN Can Help Speed Up Your Website

Page 2: How a Content Delivery Network Can Help Speed Up Your Website

Andrew M RileyDirector of Drupal

Development@AndrewMRiley

#drupalCDN

Page 3: How a Content Delivery Network Can Help Speed Up Your Website

Agenda

ExampleThe CDN Module

Using a CDNWhy you should

#drupalCDN

Page 4: How a Content Delivery Network Can Help Speed Up Your Website

Goal

At the end of this presentation you will:1. Understand why you and your clients should use a content delivery network2. Be able to set up a CDN for your Drupal site.

#drupalCDN

Page 5: How a Content Delivery Network Can Help Speed Up Your Website

ExampleThe CDN Module

Using a CDNWhy you should

#drupalCDN

Page 6: How a Content Delivery Network Can Help Speed Up Your Website

Anatomy of a Request

1. DNS Lookup 2. Connect 3. Send 4. Wait 5. Load

Server TransferClient Client/Server Client

More Info: http://j.mp/QSQQNR

#drupalCDN

Page 7: How a Content Delivery Network Can Help Speed Up Your Website

What is a CDN?

One vs Many

#drupalCDN

Page 8: How a Content Delivery Network Can Help Speed Up Your Website

CDN History

Around for over 15 years

Few players at first

Initially extremely expensive

Initially focused on large file distribution

#drupalCDN

Photo Source: http://j.mp/NfLona

Page 9: How a Content Delivery Network Can Help Speed Up Your Website

CDN Today

Many players in the game

From Free to Expensive

Covers video streaming, assets, etc

Includes new technology like P2P

#drupalCDN

Page 10: How a Content Delivery Network Can Help Speed Up Your Website

So Why?

1. DNS Lookup 2. Connect 3. Send 4. Wait 5. Load

Server TransferClient Client/Server Client

#drupalCDN

Page 11: How a Content Delivery Network Can Help Speed Up Your Website

ExampleThe CDN Module

Why you should

#drupalCDN

Page 12: How a Content Delivery Network Can Help Speed Up Your Website

Integration Methods

CDNCDN

Your Server

CDN

Your Server

Origin Pull Push

#drupalCDN

Page 13: How a Content Delivery Network Can Help Speed Up Your Website

The right one?

Integration Method

Analyze your traffic and correlate it with POPs

Cost

P2P Support

Media types

#drupalCDN

Page 14: How a Content Delivery Network Can Help Speed Up Your Website

Environments

Development - probably doesn’t need one

Staging - should have one

Production - of course!

#drupalCDN

Page 15: How a Content Delivery Network Can Help Speed Up Your Website

Common Pitfalls

Multi-Environment Conflict

File same name

Invalidating Objects

Command Propagation/Lag

Stacking CDNs

#drupalCDN

Photo Source: http://j.mp/PrYuCh

Page 16: How a Content Delivery Network Can Help Speed Up Your Website

Browser Testing

1. DNS Lookup 2. Connect 3. Send 4. Wait 5. Load

Server TransferClient Client/Server Client

#drupalCDN

Page 17: How a Content Delivery Network Can Help Speed Up Your Website

Service/Remote Testing

Both Free and Pay options

Use this for load time testing

Remote Desktop tends to give you more options

#drupalCDN

Page 18: How a Content Delivery Network Can Help Speed Up Your Website

ExampleUsing a CDNWhy you should

#drupalCDN

http://drupal.org/project/cdn

Page 19: How a Content Delivery Network Can Help Speed Up Your Website

Origin Pull

Easiest Method

Pulls from your server on first load

Can sometimes have SEO implications

CDNCDN

Your Server

#drupalCDN

Page 20: How a Content Delivery Network Can Help Speed Up Your Website

File Conveyor

aka Push

Should work with *any CDN

Allows for file pre-processing

Requires system access for daemon

Doesn’t have to come from your server

CDN

Your Server

#drupalCDN

Page 21: How a Content Delivery Network Can Help Speed Up Your Website

Excluding Paths

You don’t want to CDN everything

Avoid JS and Fonts (CORS IE < 8)

Exclude custom generated images/data

Module authors: hook_cdn_blacklist() and hook_cdn_blacklist_alter()

#drupalCDN

Page 22: How a Content Delivery Network Can Help Speed Up Your Website

Far Future Expiration

Will change some URLs

Has special requirements

Speeds up loading for return visitors (http://j.mp/PNz6Z3)

#drupalCDN

Page 23: How a Content Delivery Network Can Help Speed Up Your Website

DNS Prefetching

Speeds up the initial HTTP request

Adds a link tag to your pages

1. DNS Lookup 2. Connect 3. Send 4. Wait 5. Load

Server TransferClient Client/Server Client

#drupalCDN

Page 24: How a Content Delivery Network Can Help Speed Up Your Website

SEO Issues

If using origin, map your Canonical URL

Update your robots.txt

#drupalCDN

Page 25: How a Content Delivery Network Can Help Speed Up Your Website

The CDN Module

Using a CDNWhy you should

#drupalCDN

Page 26: How a Content Delivery Network Can Help Speed Up Your Website

Log In #drupalCDN

Page 27: How a Content Delivery Network Can Help Speed Up Your Website

Create Bucket #drupalCDN

Page 28: How a Content Delivery Network Can Help Speed Up Your Website

Create Bucket #drupalCDN

Page 29: How a Content Delivery Network Can Help Speed Up Your Website

Create Bucket #drupalCDN

Page 30: How a Content Delivery Network Can Help Speed Up Your Website

Create Bucket #drupalCDN

Page 31: How a Content Delivery Network Can Help Speed Up Your Website

Create Bucket

(Click the info icon for your bucket)

#drupalCDN

Page 32: How a Content Delivery Network Can Help Speed Up Your Website

Setup Drupal Module #drupalCDN

Page 33: How a Content Delivery Network Can Help Speed Up Your Website

Test Your CDN

Log out of your site

Load up the network view

Reload your page

Check CSS and other assets

Check for breaks too!

#drupalCDN

Photo Source: http://j.mp/SfWrmQ

Page 34: How a Content Delivery Network Can Help Speed Up Your Website

Summary

CDNs can fit all site sizes

They’ll reduce server load

They’ll reduce load time

Cost isn’t really a factor any longer

#drupalCDN

Photo Source: http://j.mp/RccQYb

Page 35: How a Content Delivery Network Can Help Speed Up Your Website

#drupalCDN

Page 36: How a Content Delivery Network Can Help Speed Up Your Website

Mediacurrent helps organizations architect custom websites by leveraging our proven processes and deep expertise in Drupal.

@mediacurrent mediacurrent.com