An attempt at making geographically distributed services easy to build
Writing an application that runs on many servers in separate locations around the world is no easy task. You have to deal with access to application data, routing, inter-service communication, and many other things. The situation quickly becomes much more complicated than having an application server with a pool