|can separate DNS make a site faster to load?|
If you're using separate DNS (in the same country as your target audience..?!), can that make your pages load faster?
I remember somebody once told me that, but somebody else said it wasn't true.
Does it help or not at all?
As far as I know, it doesn't affect page load speed, only affect the DNS lookup speed.
Setup a local DNS server will make the first time lookup a little quicker, but will not affect further navigation, because the second time, the ip for your domain has been cached.
The normal roundtrip for a local DNS server wil be in the 2-30 msec range, for a server oversease somewhere between 50 and 200 msec. You should calculate for yourself if that one-time benefit is high enough to justify a non-standard DNS setup.
In general it would be better not to move the DNS server, but the webserver close to the visitors.
So using a web host in the country of the target audience is not only better, because search engines might factor it in (let's not start the discussion if they consider local hosting cctld or not, because even SEO who specialize in multilingual SEO don't agree on this one), but also because if the server is in their country it'll be closer for them to load the webpages?
My technical knowledge of the web isn't really up to scratch, yet, but I guess that the closer the server is to the person('s computer) who wants to access the website, the faster they will be able to see it, because the data that is transmitted from the person's PC to the server (the request) and then from the server to the person's PC has a shorter way to go?
Is this assumption right? data needs to go from the person's PC to the server and then from the server back to the person's PC?
And as the internet isn't super fast, yet this still does play a role and hosting in the target country is usually the best choice?
(However..technically...if this thing called internet2 should ever be accessed by the public the hosting location would probably play a very little role?)
The advantage of local servers close to the visitors is not because the current internet isn't fast enough but because nothing can travel faster than light.
Light has a maximum speed of about 300,000 km/sec in vacuum. Through fibers, this is lower, about 200,000 km/sec. Electrical signals traveling through a copper cable are limited at roughly the same speed.
When your server is located in the US and your visitor is located in Europe, the amount of cable in between can be as much as 15,000 km. The response on each request has to travel back which makes the total way to travel 30,000 km for every request. Simple math gives a loopback time of 150 msec, which is quite common for trans-atlantic traffic.
So even with more internet bandwidth, the response will always take a certain amount of time and with the current internet, we are already close to that limit.
that is an excelent explanation of the theoretical limits we are pushing against.
It also gives a good rule of thumb when to consider moving the webserver closer to the user: If the reduction of round-trip time from 2250 to maybe 500 (~1.5 sec) makes a significant difference to the load time of your page, you might consider moving the server. If you webserver takes a significantly longer time to prepare the page, then don't bother. If .015 sec make a difference, consider moving the DNS, too.
On the other hand, while we can't expect light to travel any faster in the future, we can expect that browsers will load more files in parallel as more bandwidth becomes available. (Its already configurable in Firefox.) So the benefit of moving the server may well shrink to ~.5 sec in the not so distant future.
[edited by: GeneVincent at 2:22 am (utc) on Jan. 23, 2008]
Thanks for your great explanations!
So in general, I assume it is highly recommended to use a server in the country of the targeted audience?
I haven't done the math (not anything additional to what you offered), but it seems that whenever you have a couple of files that need to be loaded (not just one html and one CSS file and one image) for example, the time it will take a user to load the page for a distance such as US-Europe can definitely exceed a limit you wouldnt want to exceed.
I realize a lot of times that I click on the SERPs and I'm about 50% sure if I want to bother looking at the page or not (when Im not sure) and the page hasn't loaded within a second or so and I decide: ah forget about it! and close the window.
That might not decrease bounce rate by a lot, but I guess keeping page loading time as low as possible can be pretty important on the web, especially if you have sites that need to load a couple more files, right?
The speed of light aside, DNS is mostly cached. It's not checked at the authority level (ie your name servers) every time someone accesses your site. Since the DNS is cached at the end users ISP, there is no advantage moving your DNS server to a closer geographic location to you visitors. If anything, move the web server geographically closer to your users, then they'd see a performance gain.
Your chance of having your DNS entry cached depends on the likelyhood that someone else at your ISP has used your site in the recent past.
If you are google.com that chance is pretty good, if you are rarewidgetsinremoreplaces.com the chance might be close to zero.
That beeing said, I'd agree that moving the DNS makes sense only in very rare circumstances.