Forum: Ruby network proximity calculation

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
6fa76b3113f66ea5055ad3f10ab92819?d=identicon&s=25 Grayson Piercee (grayson)
on 2008-11-21 05:04
Hello,

I'm trying to do a home grown load balancing solution that needs to
determine which of the two data centers a visitor should be sent to.
I'd like to do some type of a network proximity calculation that
includes latency and number of hops which will allow me to redirect the
user to their "closest/fastest" server.

I know all about CDNs and Appliance Load Balancers (F5); I'm looking for
a custom software solution instead.

Any pointers is much appreciated.

GP.
E0c987f680cd640c14912ebfbf0f0f07?d=identicon&s=25 unknown (Guest)
on 2008-11-21 05:42
(Received via mailing list)
On Thu, Nov 20, 2008 at 11:00 PM, Grayson Piercee
<graysonpierce@yahoo.com> wrote:
> I'm trying to do a home grown load balancing solution that needs to
> determine which of the two data centers a visitor should be sent to.
> I'd like to do some type of a network proximity calculation that
> includes latency and number of hops which will allow me to redirect the
> user to their "closest/fastest" server.
>
> I know all about CDNs and Appliance Load Balancers (F5); I'm looking for
> a custom software solution instead.
>
> Any pointers is much appreciated.

traceroute -n -w 1 -q 1 $USER | awk '{sum += $3} END { printf
("%8.2f\n",sum)}'
;-)

Depending on how much time you can burn up front, one option may be to
query the user's IP address via a geo-ip-location; perhaps cache the
result based on either the user's full IP address or class C subnet to
reduce the external API calls.  Maybe traceroute and/or ping from each
data center and geo-locate, caching all the results?
This topic is locked and can not be replied to.