CDN performance
17 Dec 2018

CDN Optimization – 5 Ways to Optimize for Performance

CDN optimization is a vital task in ensuring you get the most out of your service. It also ensures your users enjoy the best possible experience driving more traffic to your site. Even though a Content Delivery Network (CDN) exists to improve the performance of your website, ensuring the CDN performs as it should is a shared responsibility. CDN providers are responsible for managing the caching servers, networks, load balancers, and other related infrastructure needed to deliver your content as rapidly as possible. However, like every other technology platform, user configuration settings and the data you store play a crucial part in determining their performance. Configuring your CDN platform, DNS, and other related infrastructure, as well as optimizing your data, can significantly increase your delivery speed. Here are five things you can do to improve your CDN optimization.

1 – Move Your Server Closer to the CDN

Even though data lives in the digital world, it uses physical infrastructure to travel to its target. Whether it be wireless radio, copper cables, or fiber optics, the distance between the origin and the destination makes a difference in travel time. A CDN replicates your content across its multiple nodes to ensure users located in various parts of the world get the best possible experience. However, not every site services a global user base. If they do, most of the time the 80/20 rule applies. If most of your users are in Europe, hosting your origin server in North America will have an impact on your largest user base. In this scenario moving your origin server to Europe will have a positive effect on your CDN optimization. It ensures lower latency between your origin server and your most visited CDN node and can mitigate the effects of a poor cache hit ratio.

2 – Reduce the Size of Your Content

The more data on a web page the longer the load time. Even if you use a CDN, unoptimized content has a significant impact on the performance of your website. There are a number of proven ways to cut the page weight of your site. You could reduce the byte size of your images or the number of pictures, photographs, and icons you have on each page. You could also look at minifying your HTML, CSS, and JavaScript files and cut the number of third-party fonts you use. Using fewer stylesheets and JavaScript files will also help reduce your page weight, and if you host any videos, decreasing these in size and number will also make a difference. It is important to remember that every file and image is a web asset. When a user’s browser loads your page, it downloads each asset via an individual GET request. Reducing the size and number of each asset will decrease the time it takes to load your page significantly and help with your CDN optimization.

3 – Leverage Global DNS Providers

DNS plays a significant role in how CDNs and the web performs and can help with CDN optimization. The faster the DNS server responds to queries, the faster it returns the results and loads the relevant web page. If you host your DNS on a local ISP’s server that suffers from low availability and high-latency, it will detrimentally impact the performance of your CDN and site. Using a global anycast solution from one of the larger providers such as Google, AWS, Azure, or Cloudflare is a far better option. Not only do these services offer far better performance, but their global scale and availability ensure they serve DNS requests as fast as possible. Another DNS configuration that can optimize the performance of your CDN is the Time to Live (TTL) setting. The higher the TTL, the longer DNS resolvers cache records which results in faster response times. However, TTL settings can be a double-edged sword. If the content on your site changes very often, a high TTL could result in your users not getting the latest changes. Setting your TTL requires a delicate balance. You must tweak your settings until you are sure your users are getting the newest content while leveraging the caching features a higher TTL has to offer.

4 – Configure Your Cache-Control Headers

Maximizing your CDN’s cache hit ratio ensures you leverage the most performance out of your CDN. Using the max-age cache-control header, you can configure your CDN to cache objects for a specified time frame. The longer an object stays in the cache, the better your site performs. As your CDN does not need to contact the origin server to obtain new content, it serves the user directly which improves your page load time. As with the TTL setting, the max-age cache-control header can impact your site’s functionality if it refreshes content regularly. You can use a variety of other cache-control header settings to mitigate this risk. The must-revalidate and proxy-validate settings force the CDN to check with the origin server for new content. If there is no new content the CDN serves the user directly. It does slow down the performance slightly, but it is still faster than having to download data from the origin server each time.

5 – Monitoring

Even though CDN’s offer improved performance and availability, monitoring the performance of the service can help you identify any issues and optimize your CDN even further. As your site is effectively being hosted across multiple servers, it is impossible to ascertain the user experience in each region without proper monitoring. If a CDN edge node is down or not performing as it should, you would not be able to identify any issues unless you monitor and test your CDN’s response times from various locations.

CDN Optimization is Your Responsibility

Even though CDNs exist to improve the performance of your website, getting the most out of your CDN service is a shared responsibility. The CDN provider may be responsible for the underlying infrastructure, but you are ultimately responsible for managing your configuration and the data you store on it. You can optimize and get the most out of your CDN service by following a few recommended best practices. Moving your origin server closer to the bulk of your users and reducing the byte size of your data can improve your site’s performance. You could also leverage global DNS resolvers and manipulate your cache-control headers. It is important to remember to monitor all aspects of your CDN’s performance. Monitoring your site from various locations ensures all your users are enjoying the best experience possible, and that your CDN service is operating as it should.