Consider a dynamic content html web site with lots of static .js and image baggage must be hosted in a single location. The site will soon have a few 1000 new users clustered in a single country on the other side of the world. This new remote country has a Amazon S3 node and all users in that country will be within 1000Km of the S3 node.
To improve the user expperience in the remote country I propose to locate the largest and most referenced static files on a local server close to that remote user community and rewrite URLs when servicing those users.
My feeling is that using a commercial CDN would be overkill in this situation and directly referencing our own manually managed S3 static content would give us more control particularly for occasional urgent patches to JavaScript.
If you are already using Amazon S3 to store your static content, it makes sense to use Amazon’s CloudFront CDN.
You can start using it and get all the benefits of the CDN without too much effort.