A content delivery network is a linked network of servers which can do some, or all of the work of providing files to visitors of your website. Most good CDN providers have servers located across the world. CDNs can just provide static files like images, or provide all website files; essentially duplicating your website on additional servers. For dynamic websites, files are cached so that repetitive server side operations don’t need to be conducted every time someone loads the web page.
CDNs provide the following benefits to your website:
- Reduce load on your main server. This allows more people to visit your website at the same time.
- Reduces latency for visitors far away from your main server. With CDN technology active the CDN will pick the server closest to the visitor’s geographical location and serve files from there.
- Provides security against spam and ‘denial of service’ attacks, by filtering requests to your server.
How the CDN works
In an ordinary website scenario, your server performs all the tasks to provide website files to a visitor. With a CDN in place, a visitor navigating to your website will download some or all of the assets from a CDN server, instead of your main server.
The visitor’s web browser will navigate to the CDN before it goes to your main server. Your main server can be used to take on some requests or it can simply be the master copy of the website from which the CDN servers refresh their caches.
From the user’s perspective the CDN is unnoticeable. They see the same content they would have seen regardless, but now it arrives faster.
There are many CDN providers out there all with varying price points and features. Some fully featured CDNs include:
If you are using WordPress as the platform for your website, you can use Photon for serving images. Photon is packaged up as a part of the Jetpack plugin, and is free to use. We frequently use Photon on websites we build.
You can learn more about CDNs at the Wikipedia content delivery network article and Incapsula’s CDN web series.