A content delivery network (CDN) is a collection of servers distributed across the world that deliver pieces of your website to site visitors located near those servers.
The most common use of a CDN is for the delivery of images from a website. This is because images are usually the slowest-loading component of a web page.
What Is a CDN?
A CDN is not a web host. It simply caches the parts of your website that you’ve set up to be served by a CDN. These saved (cached) files are uploaded to all of the different servers across the world.
When a visitor from another country visits your website, they receive the text directly from your web host, but they may receive a number of other files from the CDN server nearest their location.
These files may include:
The demand for CDN services skyrocketed when Google started using page load speed as one variable in their ranking algorithm.
This race to become the fastest loading page on a topic required website owners to seek out alternatives for slow-loading images on the site. The distributed, cached, CDN network was the perfect solution.
Why a CDN Is Essential For Your Site
If you own a website, the speed that pages load is important for a few reasons. As mentioned above, it’ll boost your overall ranking score with Google.
Secondly, it improves the experience visitors have on your website. This will make them stay on your website longer, and visit more pages on it.
Here are a few other ways a CDN is essential for your website.
By using a CDN, you’re shifting the bandwidth use off of your web host’s server and onto the distributed network of CDN servers instead.
Once you set up your CDN account and set it up with your domain, you’ll see that bandwidth start to accumulate in your account dashboard.
This is the bandwidth demand you’re removing from your web host’s server. With web hosting services as expensive as they are – and very often being charged for using more bandwidth – cutting back on bandwidth usage usually equates to significant cost savings.
CDN bandwidth costs are far cheaper than web hosting costs. This is because CDN services set up their server network to manage high bandwidth content like images. They do this in the following ways.
- CDNs use optimizations like server load balancing and steady state drives, which speed up the transfer and reduce errors.
- Through file size manipulation techniques like file compression and minification, CDNs reduce the amount of data that’s transferred.
- Using SSL/TLS certificates, CDNs can reduce false transfer starts, which avoids the need to restart a transfer and send even more data.
When it comes to reliability, there are few things that reduce your website downtime more than using a CDN service.
This increased uptime is due to a number of reasons.
The distributed CDN network means that the bulk of your bandwidth – images – are coming from multiple servers from all over the world. CDN services use a technique called “load balancing”, which means that when there’s excessive demand from one server, other servers are used to balance out the load.
Whenever your website traffic spikes significantly, it puts a lot of demand on multiple pieces of hardware. Specifically, the web server in your web host’s data center, and the distributed servers managed by your CDN service.
And since images and files are the largest bulk of the data being transferred, that’s where the majority of demand will occur.
The fact that CDNs manage that demand across multiple load-balanced servers means that your site will be able to handle significantly more traffic than if you weren’t using a CDN service.
You may be surprised to learn that using a CDN can also increase your site security.
To understand this, first it’s important to understand the flow of data when visitors come to your website.
Picture this like a dam with multiple water ports. In this scenario, it would be a dam with just a single port for water to flow through. It wouldn’t take too much of a water surge for the dam to be overburdened and water to start flowing over the top.
This is why most dams are built with multiple ports that can be opened as the water level rises on the other side.
If you have a website hosted on a single web server, it takes much less effort on the part of a DDOS attacker to take down your website.
DDOS attacks are launched from many different “bots” from around the world, simulating hundreds or even thousands of users making requests against your web server all at the same time.
However, by using a CDN service with distributed web servers around the world, all of those servers are like additional ports in the dam.
Now your web server only needs to serve text, and multiple CDN servers provide images and other files. All of these servers are essentially sharing the bandwidth demand.
This won’t provide 100% protection against DDOS attacks, but it will require that the effort the hackers put into the attack be much larger before your website goes down.
In addition, if you make sure to set your CDN up with TLS/SSL certificates, all traffic will be encrypted and protected from hackers intercepting the web traffic.
How to Set Up Your CDN Service
While a CDN service may sound complicated, setting it up is fairly easy.
First, you need to choose a CDN service. There are a few major ones to choose from.
- Cloudflare : One of the largest and most well known CDN services used by many major businesses across the world.
- Fastly : Offers a number of web optimization products, including CDN content delivery.
- KeyCDN : Manages 34 data centers located all across the world, with proven website speed performance.
- MetaCDN : Unlike other CDN services that charge based on usage, this service charges a flat monthly fee.
- StackPath : Formerly MaxCDN, StackPath is used by many companies and websites around the world.
Any of these services will provide sufficient CDN optimization for your site. If your site is small, it’s better to go with a usage-based pay model since your bandwidth will likely be low. If you have a large website or business, the fixed rate model would be better.
Once you’ve signed up for a CDN service, you’ll need to set up your CDN zone in your account.
Setting up the account simply involves providing the name of your domain, and configuring caching and compression. Typically, it’s fine leaving these settings as default.
Make note of the CNAME hostname provided by your CDN. You’ll need this later.
Finally, you’ll need to install a CDN plugin on your site. For example, if you’re running a WordPress site, W3 Total Cache is a popular option.
Once you install the plugin, you’ll see a field available where you can enter the CNAME provided by your CDN service.
You’ll also find a section where you can enable what type of files on your website you want the CDN service to cache and provide to visitors.
Once you’ve saved all changes, you should see the CDN bandwidth charts start reflecting visitors over time. It may some time for the changes to replicate throughout the Internet, but the DNS changes should update after about 24 hours.
Given the performance and security benefits provided by a CDN service, you can’t afford not to configure it for your website.