I'm new to complex network infrastructure but I'm quickly realizing that we're outgrowing our centralized load balanced cluster.

The way we have things setup right now means that in order to add a new group of worker nodes in a different data-center the following latency is added: User connects to load balancer in data-center A, load balancer sends a request to data-center B's worker node, data-center B starts processing the page and in doing so has to send a database query to datacenter A (will be resolved soon thanks to the help of a SQL cluster) data-center B's worker has to send the page back to the load balancer which has to send the page back to the client.

TL;DR far too much latency is caused by having a central load balancer.

That being said we need a method of decentralizing our infrastructure and my best idea at doing this would be to do something at a DNS level. Intelligent, location based DNS.

We're currently using the nameservers of our domain provider Lightspeed Gaming, and I understand that if we're looking to grow this doesn't sound like it'd continue to be a viable option. Would I be correct in assuming that we're going to need to setup our own dedicated nameservers, or are there any nameservers that we may be able to pay to use out there that can accomplish that functionality?

If I do need to get a dedicated nameserver set-up what should I use and where do I start?

Please note that an essential requirement of this setup woudl be to detect a failure in the HTTP worker node before sending a request to it (resolving DNS to that specific worker)


Done further, more extensive research. Here is what I have to report for those wondering:

Generally it's not a great idea to do this at a DNS level (although services such as CloudFlare offer some attractive features), but rather, what I personally was looking for was using an anycast solution in which we declare routes in multiple data-centers all for the same IP, then BGP using OSPF will automatically route to the location that makes the most sense. Then all you need to do is configure web-servers in each data-center you have an anycast route setup in and you're good to go!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.