Getting Started with a CDN

The way most end-users find and experience content today starts and ends on the Web (mobile or otherwise). For content publishers and other Web businesses, this is great news because demand is at an all-time high. Meeting supply needs on time, however, can be tough.

Web workers are increasingly challenged to provide continuous streams of content to meet consumers' insatiable appetite for information and deliver content assets with incredible agility. Content delivery networks (CDNs) are designed to help. These systems are not widely adopted, however. Perhaps it is because enterprises without obvious content delivery needs (e.g. "bandwidth exceeded" messages) often don't even consider using one.

The problem with this is that deciding, or even considering, the use of a CDN isn't really about the amount of published content, but rather how many users are regularly accessing the content, how often they're doing so and what technology they're using (e.g. mobile devices or desktops).

What is a Content Delivery Network?

A CDN is a huge, distributed server system that is deployed in multiple datacenters and acts as a cache by downloading content once and then distributing copies of it to users from its own servers. The purpose of these systems is to quickly provide end-users with content.

Most content on the Web today can be served through a CDN, such as Web objects (e.g. text, scripts, graphics, URLS, etc.), ecommerce applications, downloadable objects (e.g. media files, software, documents, etc.), social networks and live or on-demand streaming media. CDNs are most commonly used, however, for websites that use static content, such as images, scripts and CSS.

Why Use a CDN?

The benefits of a CDN are very similar to those of a good hosting provider. They offer significantly faster load times, higher availability and a better opportunity to scale, as using multiple servers expands bandwidth capacity to process temporary traffic surges.

Copies of the data housed on a CDN are spread across a collection of different servers, so users will get the content delivered to them from the closest geographic location. This ensures that it's delivered in the fastest and most efficient manner, meaning visitors from anywhere in the world will receive (roughly) the same user experience.

Other benefits of a CDN include the redistribution of a heavy traffic load to multiple servers to avoid congestion, access to global datacenters and international load balancing, as well as, in theory, improved Google search rankings (thanks to increased website speed). How Can I Get Started with a CDN? There are numerous CDN solutions available for website owners, and the process of deploying one can vary wildly depending on site specifics (e.g. where the site is hosted, what type of software runs on the back-end, etc.).

Blogging Platforms

Bloggers who are seeing their traffic increase exponentially, but are still running their sites on platforms like WordPress or Joomla, can easily (and affordably) integrate a CDN. For instance, bloggers can create their own CDN with their existing domain with the WordPress w3 Total Cache plugin. Or, they could use a service like MaxCDN, which offers easy software and hosting integration and works with WordPress, Joomla, Typo3 and Magento sites.

Gratis and Commercial Solutions

A handful of free CDNs, such as CloudFare and Coral, exist for those businesses that host their own sites on other content management systems but have limited resources. Meanwhile, major tech companies like Rackspace and Windows have commercial CDN offerings worthy of exploration. To get an idea of what it takes to use a CDN, Website Magazine has put together a brief explanation of how to use the Windows Azure CDN, as well as how to turn the Google App Engine and Amazon S3 CloudFront into CDNs. It can be found at https://wsm.co/HowToCDN.

DIY

In some cases, websites can build their own unique CDN, but it is extremely complicated and costly to implement. However, the demand for do-it-yourself CDNs has led to the development of a number of open source solution projects that can help companies create their own networks, such as Cacheboy, OpenCDN and MirrorBrain.

Another option for websites is to set up a system that mimics CDN usage. To do this, sites must buy a new domain to hold their static data, and then feed that content back to the main site. While this is not as ideal as actually using an established CDN, it is free and yields similar results. You can read a step-by-step guide on how to set up one at https://wsm.co/DIYCDN.