Page load time is a key performance indicator for any web service and directly impacts conversions and UX. If a website or application is only available from a single origin server, users can face delays of hundreds of milliseconds or more when loading content. To reduce page load time and stress on the origin server, developers leverage browser caches and distributed cache servers managed by commerical content delivery networks (CDNs).
How Content Caching Works
- A user clicks a link to a web page containing static content (images, videos, stylesheets, etc).
- Assuming the content isn't already in the browser cache (meaning the user hasn't recently visited the web page), the user's browser will send requests to the CDN. The CDN uses Anycast DNS to route the requests to the closest server to respond to the request.
- If the requested files are available on the caching server, they are delivered to the user. In this case the web page will load extremely fast since the content is physically closer to the user.
- If the requested content is not on the caching server, the CDN requests it from the origin server. The content from the origin is proxied through the CDN, stored in the CDN's cache server for subsequent requests, and ultimately delivered to the user.
Example of Content Caching
Assume a Netflix subscriber in London wants to stream the show House of Cards. To ensure fast access and minimum buffering time, Netflix copies the videos from their origin servers in Los Gatos, CA, to the caching server closest to London. Because of this, all subscribers in London can quickly access the show and avoid a transatlantic file transfer.
Moving content within a distributed network is called “pushing content to the edge,” and Netflix excels at this operation. Over time, they have built up a caching empire by partnering with numerous ISPs as part of their Netflix Open Connect program. Of course, this is all hidden from subscribers who just notice the results of faster content delivery.
Today, 47% of consumers expect pages to load in under 2 seconds and 40% abandon sites that take over 3 seconds to load. Because of this, content caching is a vital performance optimization for any business that delivers content online.