Hacker News new | ask | show | jobs
by askbill 1910 days ago
>The urban legend that DNS-based load balancing depends on TTLs (it doesn’t - since Netscape Navigator, clients pick a random IP from a RR set, and transparently try another one if they can’t connect)

That's just not how this works at all. While you could use RR records for this purpose, I believe the author is suggesting that load balancing will happen automatically when the client simply can't connect to one of the addresses. That's not load balancing. That's failover.

Additionally, most of the use cases for this that I'm aware of are Cname -> A record. This is to say, this method is being used with precision rather than RR.

I agree that running 60 second TTL's regardless of need is inefficient, but at a fast glance, the full argument doesn't hold up for me.

1 comments

I think load balancing in that argument happens via “clients picks a random IP” and failover happens via “transparently try another if they can’t connect”.

So that would be both load balancing and failover, why doesn’t the argument hold up?

load balancing is more like you have 5 records, I'll serve 3 of them back to you.

next client comes in, I'll serve three again, possibly different from the three i've served before.

the client doesn't even know that there are two other possible endpoints (unless maybe until the next query).

edit: i just tried running this

    watch dig -t A www.amazon.com @8.8.8.8
and saw the record change from time to time.