A Content Distribution Network is basically a technical solution to reduce latency (Delay caused by distance between webserver and visitor). Distance is important because the speed of the internet is limited by the speed of light as optimic fibre cables are used to route traffic. As nothing is faster than the speed of light, alternative methods need to be deployed to reduce the negative impact of latency.
A CDN uses various techniques to either shorten the distance between visitor and content by deploying local caching at a large number of geographically distributed locations and routing the visitor to the locations that is nearest and by using server load balancing and, in some cases, application acceleration.
A secondary advantage of using a CDN is that the load on your own servers will automatically decrease as part of the traffic will be serviced by the CDN. In the case of streaming media, sites that host large graphical files or download sites these advantages become mission critical. A CDN will also make a website more robust as content is server from many different locations and availability issues on a single location will no longer disrupt the site.
Originally CDN's were only capable to cache static content but with the introduction of Edge computing it has become possible to push complete applications (data and computing power) to multiple locations. The disadvantage of Edge is that it still highly expensive and your applications needs to be fully designed for it. The advantage of course is high availability, high scalability and maximum performance.
A recent trend is to use a Multi CDN Strategy. In this case, you will select two or more CDN's that each have their unique strength and cost. Some CDN's are particularly strong in a certain region, others specialize in mobile and others specialize in streaming media. This trend has created a need to manage multiple CDN'sby using a new type of load balancers that are capable of routing traffic to multiple CDN's based on parameters like location, time of day, traffic type but even response time (if one CDN is too slow take the next).
Today, there are a large number of CDN's (roughly 20 major players) to choose from and each of them has their own sales pitch which will explain why they are the best and the cheapest. In reality, things are not that easy (are they ever..).
Key Performance has been helping its clients to successfully define, implement and manage a CDN strategy for almost 10 years. We do this by first analyzing your application architecture, the geographical distribution of your customer base, traffic types and volumes, bandwith utilisation, response time requirements and budget. We then use this information to select one or more (based on your requirements) CDN('s) that are ideal candidates for your specific needs. In a pilot project we will then do limited deployments and tests to ensure and compare their performance. For this we will use load tests in which we generate load from various global locations to measure local response times. Once a provider is selected we can take on project management for the full implementation and production monitoring.
Key Performance is the reseller for a number of CDN's (Akamai, CDNetworks and some smaller ones). We are working with multiple partners here because they are are different and each has its own strengths and weaknesses and because being a partner will provide us with better access to their technical teams and this improves our capability to best serve the needs of our clients.
The days in which you had to be a global player and have millions of visitors each day are long gone. The fierce competition on the CDN market has had a positive impact on cost and in the end you just pay for what you use. Because of this, using a CDN has become attractive for almost anyone who is generating revenue over the web and who is looking to optimize performance.