1

guys. I'd like to deploy my app on two different servers, located in US and Germany. As I suppose, I need to set up some kind of load balancer, that would deternime from which country my user is, and resolve it to US/Germany server. The general aim is to provide user abitiliy to work with the closest server (CDN is not a solution, 'cause we dont share static content).

Where should I place load balancer that would resolve user to USA/GER severs? In usa/germany? What shold it look like? A usual server with some specific app or what?

Thank you.

Zoredache
  • 128,755
  • 40
  • 271
  • 413
Ilya Rusanen
  • 165
  • 6
  • 4
    Sounds more like you need GeoLocation DNS. http://serverfault.com/questions/65784/is-there-any-dns-that-supports-geo-location-directional-dns – Greg Askew Nov 25 '12 at 14:29

2 Answers2

7

Typically what you're trying to do is done with some form of Geo-aware DNS, which can be done either by patching your nameserver to respond to queries based on the location of the user (or the user's DNS server) requesting the address, or by using "anycast addressing" with BGP to have normal DNS servers in various regions answer queries from those regions with addresses appropriate for that region.

Either of these will only be "mostly accurate" since the user typically doesn't contact your DNS server directly for addresses, instead they use their ISPs name server that makes the request for them, or they use Google's or OpenDNS's servers which are probably nowhere near them.

DerfK
  • 19,313
  • 2
  • 35
  • 51
-1

If these are cloud instances, you might consider Google Cloud which lets you put instances from many regions under the same load balancer.

If they're on-premise, I would use NSOne. I've used it for a few years for making one domain use servers from the US, Europe and Asia. It's very configurable and you can set the traffic management to be quite specific. It's got an API that works really well on the command line so you can respond fast if one of the servers is down.

bootbeast
  • 34
  • 4