With site loading times so critical for conversion of visitors to purchases and its use by Google as a signal in their search rankings, having optimal performance for your site’s users is very important to not just the popularity of your site, but also the success of your business.
CDNs – Who, what, where?
CDNs (or Content Delivery Networks to give them their full name) run multiple servers in multiple geographic locations with plentiful and high quality networking connections and compute resources. These can, depending on the company and their business model, run into the hundreds of thousands of servers, in hundreds of locations, with multiple Terabits (1,000 Gigabits) of connectivity.
Generally they work by serving website users directly from their servers in their datacenters, avoiding the need for end users to directly communicate with website servers for the majority of requests, only using them occasionally to request the original content for end users.
Static content for a site, such as Javascript, CSS, Images and Video files can be stored within the CDN network. By storing content within the CDN servers themselves once requested initially from the website server, any subsequent requests for the same content can, for a period of time, be served from the CDN network directly without having to contact the website server again. Dynamic content, such as PHP, HTML and ASP formats will generally be requested each and every time from the origin server via the CDN servers unless specifically configured to be cached.
So how does that help me?
Typically CDNs aim to provide value to their customers in multiple ways, which depending on their feature focus may include a range of:
1) Speed boost
By having servers located closer to your end users in every market, latency to your site is reduced meaning connections are established quicker and fewer network hops means maximised bandwidth throughput to your users. HD video (a key component of online commerce and media organisations) is especially optimised.
Most CDNs will also automatically reduce the size of your content and implement newer technologies (such as HTTP/2) to improve your users experience without impacting users or your website design.
Google also loves speedy sites!
2) Improved Uptime, even during traffic surges
By caching content locally and running out of many locations, sites will see an increase in availability to end users by reducing the number of failure points between users and the site, reducing connection time outs and mitigating the failure of backend components.
Additionally, CDNs have much higher levels of additional infrastructure to handle large increases in traffic that may been seen during events or promotions, reducing the impact to your backend.
3) Security enhancements
In addition to providing a buffer to increased load during any DDoS attack, CDNs will also provide additional DDoS mitigation and Web Application Firewall (WAF) capabilities, removing malicious traffic before it reaches your backend server environment.
4) Infrastructure reduction
Offloading the majority of static content outside of your backend server environment can mean significant reductions in the load, allowing you to potentially reduce the backend requirements or increase the amount of users that can be served with the same level of infrastructure.
Conclusion = No brainer!
Who doesn’t want a faster, more secure and available website for less overall investment?!
Unfortunately very little in tech is quite as easy, so yes, there are multiple areas to consider for each and every site, provider and use-case, but I’ve yet to see any site that wouldn’t benefit in even a small way from using a CDN. Make sure to research provider options in depth, work with them to implement specifically for your site and then test thoroughly before sitting back to enjoy the benefits!
Image credit: Emile Aben16