Eddie C wrote:
If you custom code your application you can set it up to handle
records. But you need to recode your applications each application has
reconfigured each time you add a server to the group.
No it doesn't. The client just needs to retry on all the IP addresses
that the DNS request returns. Add a server, add it's address to DNS, done.
As to the cost factor. Yes buying a load balancer might cost
might be able to ebay one for $1000.(Linux Virtual Server is open source
and > GPL but that is another story.)
You can easily pay $30,000 and up for a load balancer. Remember that it
needs to be redundant and more reliable than the servers it balances to
help any. Then there is maintenance - and repeat for every site. A
good client software library routine would fix it for everyone.
How much does it really cost to recode your
applications, test, and redeploy?
Why do it any other way in the first place? If you get alternative DNS
addresses and the one you try first doesn't accept your connection, why
shouldn't every application do the sensible thing? If IE can do it...
Probably a lot more work then $2000. Our
LDAP database is the corner stone of our company. We would have to recorde
10 applications to achieve our own round robin.
Does this mean you don't have a common library routine that connects to
And would only get some of
the features of a hardware load balancer.
And you get some the load balancer can't provide.
Google seems to be taking a hybrid approach. They likely use
mutliple A records. and hardware load balancing. Of course they are
Addresses: 126.96.36.199, 188.8.131.52
I would be willing to bet that 184.108.40.206 and 220.127.116.11 are
hardware load balancers.
And you can bet that Google has spent hundreds of thousands on the
balancing setup with DNS servers that are aware of the state of the
servers behind a large number of local load balancers.
For our deployment I have a two node LDAP system (multi master) If I
one of the nodes the IP floats to the other node within a few seconds. We
did not have to recode any application, just configure them with a floating
IP address. Some of our developers have built failover into their apps. I
think its just extra code that there is already a proven solution to. I
am a fan of mutli-master and true TCP load balancing, but thats just me.
I use hardware balancers too, but I recognize that most of what they do
is cover up a problem of dumb clients that don't know enough to try the
alternate address(es) that they already have.