CDN
CDN stands for content Delivery Network.
CDN’s are proxy networks distributed across the globe to generally serve static assets to users. These assets can include html/css/js, images, videos, and some dynamic content.
In general, without a CDN a user would visit your domain, this would trigger a request to download resources from the server and deliver it to their end. The user could be in Europe and the host server located in North America. This would produce a large RTT (round trip time). With a CDN however which could be located in Europe. The user would send a request, this request would go to the CDN server located in Europe. The CDN then would server the requested assets back to the user.
The advantages of CDN include:
- 1. Serving content close to servers reducing load and request times
- 2. Reduce requests from your servers generally freeing up compute and memory resources
- 3. Adding more redundancy and replication points for assets
- 4. Optimizing asset delivery based on the end users browser / device
- 5. Improved resistance against DDos attacked
Disadvantages / Considerations of CDN’s include:
- 1. Increased monetary costs to use the CDN
- 2. Added complexity of supporting resources to and from the CDN
- 3. Settings Appropriate cache expiration policy
- 4. Not all CDN’s providers support all types of assets
- 5. Need to set up a CDN fallback. Either a secondary CDN or your servers
- 6. External reliability on a third party vendor - no control over the CDN for support or service outages
- 7. Acces Blocking - some CDN’s are blocked in different geo locations due to political or legal issues