Designing a content delivery strategy

Technologies like content delivery networks, cloud compute and storage, container schedulers, load balancers, web application firewalls, DDoS mitigation services and many more make up the building blocks that serve the online applications of organizations today. But the entry point to every one of those applications is an often-ignored bit of infrastructure: DNS. As the internet has mushroomed in size and traffic, DNS has adapted to become a critical factor in application delivery. Organizations that rely on content delivery networks (CDNs) can work with their DNS provider(s) to create a CDN strategy that best serves them and their customers.

CDN: the what and the why

A CDN’s job is what it sounds like: deliver content such as images, video, html files and javascript from a network of distributed systems to end-users. CDNs have been around for about as long as Managed DNS companies. Akamai is usually considered the first serious CDN player, and the company rose to prominence during the first dot-com boom. Generally, CDNs deliver content over HTTP or HTTPS, the web protocols, although there are occasionally use cases like video delivery where other protocols come into play.

Early on, the basic motivation to use a CDN was to improve the performance of content delivery.

Imagine an early 2000s web page with a bunch of text and images interspersed. Behind the scenes, to load all the assets for the page, you might need to do a few dozen HTTP requests. (These days that might be more like a few hundred.) Each request requires your browser to connect to a web server, specify the content it’s requesting, download the content, and display the content. If you have users around the world (or even around the country), having them all connect to a single datacenter (say, in Virginia or maybe California) to get the content for your application can work just fine, but if you can move the content physically closer to the application’s end users so each request is done to a web server in the same locale as the user, the time to connect and fetch the content before it can be displayed is reduced.

Leave a Reply

Your email address will not be published. Required fields are marked *