Almost all visitors of our website come from our own country, The Netherlands. Only a small percentage of users come from other countries. Am I right that using a CDN will not give any advantage? That is if our own servers perform ok offcourse :-).
Correct (I assume your servers are in the Netherlands also). A CDN could actually make things worse if they didn’t have an edge node really close to your users.
Thanks Patrick, thats what I figured :-).
@Geebee : What you could (or perhaps really should) do is to look at your analytics, and figure out which percentage of your users have really old browsers (IE6 era) and modern browsers (FF 3.5+ / Chrome 4+ , upcoming IE9, etc).
If you have many old browsers, then “sharding” your static assets over 2 or more hostnames (3rd level DNS names) gives a performance boost, due to the browser opening up multiple parallel downloads. (i.e. www.company.com with www-1.company-static.com and www-2.company-static.com as CNAMEs pointing to www.company.com.)
It’s easiest to just use a single extra hostname, fx www.company-static.com.
If you use more than one extra hostname, you must take care to keep the “object” to “shard” mapping consistent. If “logo.png” is referenced as http://www-1.company-static.com/logo.png then it must stay that way. If it is later referenced on the other shard hostname www-2, then it will be re-downloaded.
Original source for this recommendation:
If your users have modern browsers, which will do 6+ parallel downloads from the same hostname, then you probably shouldn’t do this. The extra time taken for the extra DNS lookups could eat up or be worse than the benefit.
For an overview of which browsers support many downloads from the same hostname, see browserscope.org.
Jesper, indeed we do that :-).
We now still have 5% IE6 users and 16% IE7 users (last half year). We use 1 extra host-name, so we can serve without cookies from that one (easier than with a sub-domain). We use this extra domain for content-images (jpg, gif, png). Not for .htm/.js/.css files (including references to system-images from within css-files).
Indeed the decision if adding another one for e.g .js and .css files is a difficult one. I think it is not wise to do that, but I will have to do good testing to know more.