0

We are building a socket based service where latency is paramount, and as such we have servers distributed into 7 data centres around the world. However, whilst we know we're bringing the servers closer to the clients, it's very difficult to know how effective this is, and importantly, what difference this makes compared to our competitors.

As such, we want to run simple scripts that test latency and throughput for both our service and our competitors, which is easy enough using Amazon, however Amazon only have 7 data centres. We would like to know for example how we perform in locations all over the world such as South Africa, Australia, China, Peru etc.

Does anyone know of any service where we could piggy back off their global infrastructure and run some scripts to test this performance? The obvious contenders are people like Monitis, but I don't think they would allow us to run custom scripts, only standard protocol monitors.

4 Answers 4

8

Lease servers (or virtual servers) in the countries you're interested in.

5
  • 1
    Wow, I hadn't thought of that? Is this really even worth a post? Obviously I can do that, but that's a huge waste of resources and money. If I have to maintain a network of 50+ servers, with hosting costs of say circa $50 per month, then I have a $2,500 a month network of servers that I need to configure, manage, and pay for each month. That was why I asked the question! Nov 12, 2012 at 15:45
  • 2
    There's no way for any of us to know you thought of it, since you didn't mention it. Nov 12, 2012 at 15:56
  • Still the only solution. There are a lot of Performance testing Services out there, and you could easily just hire one for a couple of Dollars per month, but for a SHELL you pretty much will Need o get a Server account. That said - the requirement makes ZERO sense to start with, there is no Need for you to run a script - use a Monitoring Service.
    – TomTom
    Nov 24, 2012 at 11:55
  • @MichaelHampton, apologies, you're right, I was not clear enough in my origin post. Apologies for the sarcastic response, it was unnecessary. Dec 2, 2012 at 20:44
  • Not to mention, they need not be expensive. A series of low-end VPSes in strategic geographical locations would serve, as long as you could tolerate the occasional brief outage of one of them. Dec 2, 2012 at 20:46
4

Many ISPs and data centers offer looking glass software, which you can use to:

  1. ping an IP address
  2. follow a packet through the network to a specific destination (traceroute)
  3. view BGP routing table

Here are looking glasses servers from various countries

1
  • Wow, this is great, I had no idea about this. Thanks for that link. Unfortunately this does not solve our problem as we need to operate on other protocols, but this is a great link to have. Nov 12, 2012 at 15:42
1

Is there a way you could build some crucial or even all of your tests in WebSockets/HTML5/JavaScript/Flash.?

This way you could ask any community for help to run tests for you around the world.

You could for example get some relative metrics on latency via WebSockets or from doing very light weight ajax requests. By using HTML5's geolocation feature you could pinpoint which general area a request is coming from.

Maybe you could also get a sense of throughput by measuring the time it takes to stream/download a file.

Here is a pretty cool article on WebSockets and latency measurements.

Good luck Matthew!

EDIT: Sorry this does not actually answer the question "how do I get a linux shell easily in multiple countries?", rather it suggests an alternative approach.

1
  • Thanks for the response deRailed, but unfortunately we did not consider this option but decided against it. The problem is we'd struggle to compare like for like as people would have different machines, connections etc., and more importantly we probably don't have a good enough geographical spread of users who would help us. So unfortunately whilst the suggestion is a nice one, we don't think it would work. Nov 12, 2012 at 15:36
0

I couldn't find the right answer, but I did come across a few services that would allow real browsers to be spun up in locations around the world and execute client side code. So instead of running linux scripts, I instead wrote some Javascript to do the same job.

The three I found were:

I have tried these solution using their trials. All of them work, however the latter two unfortunately have some older browsers installed. I'm waiting for them to upgrade.

2
  • did you want shell accounts or browsers around the world?!
    – Gaia
    Nov 23, 2012 at 17:51
  • Sorry, you're 100% right, I didn't explain myself very well. Unfortunately I was unable to find a service that provides linux shell access in various countries around the glove. The only solution I could find instead was to use a browser to run scripts that did the same job, and those browsers were spun up in various countries. That was the only solution I could find. Nov 24, 2012 at 8:50

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.