How a Content Delivery Network Can Help Speed Up Your Website
-
Upload
mediacurrent -
Category
Technology
-
view
1.708 -
download
1
description
Transcript of How a Content Delivery Network Can Help Speed Up Your Website
![Page 1: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/1.jpg)
#drupalCDN
How a CDN Can Help Speed Up Your Website
![Page 2: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/2.jpg)
Andrew M RileyDirector of Drupal
Development@AndrewMRiley
#drupalCDN
![Page 3: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/3.jpg)
Agenda
ExampleThe CDN Module
Using a CDNWhy you should
#drupalCDN
![Page 4: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/4.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/5.jpg)
ExampleThe CDN Module
Using a CDNWhy you should
#drupalCDN
![Page 6: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/6.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/7.jpg)
What is a CDN?
One vs Many
#drupalCDN
![Page 8: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/8.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/9.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/10.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/11.jpg)
ExampleThe CDN Module
Why you should
#drupalCDN
![Page 12: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/12.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/13.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/14.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/15.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/16.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/17.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/18.jpg)
ExampleUsing a CDNWhy you should
#drupalCDN
http://drupal.org/project/cdn
![Page 19: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/19.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/20.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/21.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/22.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/23.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/24.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/25.jpg)
The CDN Module
Using a CDNWhy you should
#drupalCDN
![Page 26: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/26.jpg)
Log In #drupalCDN
![Page 27: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/27.jpg)
Create Bucket #drupalCDN
![Page 28: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/28.jpg)
Create Bucket #drupalCDN
![Page 29: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/29.jpg)
Create Bucket #drupalCDN
![Page 30: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/30.jpg)
Create Bucket #drupalCDN
![Page 31: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/31.jpg)
Create Bucket
(Click the info icon for your bucket)
#drupalCDN
![Page 32: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/32.jpg)
Setup Drupal Module #drupalCDN
![Page 33: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/33.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/34.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/35.jpg)
#drupalCDN
![Page 36: How a Content Delivery Network Can Help Speed Up Your Website](https://reader036.fdocuments.us/reader036/viewer/2022070315/554e3df6b4c905f4478b4e5f/html5/thumbnails/36.jpg)
Mediacurrent helps organizations architect custom websites by leveraging our proven processes and deep expertise in Drupal.
@mediacurrent mediacurrent.com