2

I am about to begin development of a web app in New Zealand for a NZ market for which scalability is a key requirement. I am contemplating using Google Apps Engine which I have used in the past for smaller projects where latency was not a big issue, because half the apps are client side Java script.

However, the new project requires fast AJAX response times. The local web-app companies charge about $175/month (much more than in the US I would imagine) for a dedicated server.

Is there likely to be a significant difference between the latency for AJAX requests if I use Google Apps Engine (hosted in the US I presume??) vs the local hosting company who host here in New Zealand? If so how big?

jasalguero
  • 4,142
  • 2
  • 31
  • 52
Mike
  • 3,855
  • 5
  • 30
  • 39
  • Not about latency but might help you make a decision: GAE announced new pricing policy (big increase) [link](http://www.google.com/enterprise/cloud/appengine/pricing.html) . That dedicated server might turn out to be cheaper if your app gets decent traffic. – Eren Güven Sep 03 '11 at 04:19
  • Is there not a Google datacenter in NZ? My ping to Google servers in Toronto is 10ms. So if **you** used AppEngine, at least **I'd** see really low latency to it. – Steven Kampen Sep 04 '11 at 06:21
  • Ping www.google.com and see what you get. – Steven Kampen Sep 04 '11 at 06:22
  • Just in case that wasn't clear, Google has datacenters all over the world, and it's all distributed processing and crazy algorithms and like 40 hundred billion DNS records and lookups and redirects, etc, deeming it the coveted 'super mega big cloud' status. – Steven Kampen Sep 04 '11 at 06:32

4 Answers4

1

From your explanation you would like to use App Engine as your backend, there should not be any latency problems other that the time your app would take to load and serve a request. But as they say, there is no better test like the one you do it yourself, so go ahead play with App Engine and see it for yourself!

Happy coding!

1

A service which may interest you in this context is CloudSleuth. They measure page load times from multiple locations. But select Asia/Oceania for Location. Then drill down for GAE to see page load time from various location. Unfortunately the closest will be Sydney, where page load for GAE currently is almost 20s.

okrasz
  • 3,866
  • 24
  • 15
0

App Engine is not globally distributed. The whole application is hosted around North America by default.

It you pay for the service you may request hosting within Europe instead, but there is no option to select any other regions (from https://developers.google.com/appengine/docs/python/gettingstartedpython27/uploading).

pafinde
  • 548
  • 4
  • 6
0

It's unavoidably the case that the latency for a request within New Zealand is going to be lower than the latency for a request to the US and back, all else being equal. There are several mitigating factors to consider, though:

  • The speed-of-light delay may not be significant for your application. The round trip time to the US and back is under 100 milliseconds; the latency generated by your app serving the request may be large enough that this is not a significant factor on the end-user latency.
  • Although your app is only in a single location at any one time, Google has caching frontends all around the world. Requests typically get routed to the closest one, and if your app generates cacheable responses, the frontend may be able to return a response from its cache immediately, without having to ever send the request to your app.
  • Some ISPs, particularly in places like NZ where international bandwidth is expensive, run transparent proxies. Likewise, so do organisations, and your browser itself has a cache. Any of these can satisfy the request in less time than a roundtrip, if the response is cacheable.

In the end, the question is whether or not the extra 100 milliseconds or so is acceptable. More often than not, the answer is yes, and it's worth the tradeoff of not having to handle machine provisioning, maintenance, etc etc yourself.

Nick Johnson
  • 100,655
  • 16
  • 128
  • 198