Backend for Android: Google App Engine and Compute Engine

I am about to start developing an Android application. The backend will be hosted on Google Cloud Platform, but I am hesitant about using GAE and then I could potentially go to Compute Engine or go directly to Compute Engine.

The application will be distributed in many countries and will most likely have a lot of traffic from the very beginning (we already launched the test and did a great job).

It won't have a large content component, Android-Backend interactions will be based on REST API.

My main questions are:

  • GAE uses Bigtable: how to transfer data in case we decide to switch to Compute Engine later?
  • Endpoints: Can You Use Them in Google Compute Engine?

In the end, the solution is either to save time (GAE is easier to get started) or to avoid migrations later.

+3


source to share


1 answer


The App Engine Datastore is available for reading and writing through a public API . Here's a session (including video) from last year's Google I / O showing how to use App Engine and Compute Engine in conjunction with a shared data store. This means that you can serve most or all of your API through App Engine and then use the Compute Engine if there are certain parts (video processing, geolocation, Hadoop processing, etc.) that are not appropriate for the App Engine model.



At the moment it looks like Cloud Endpoints are specifically for App Engine , but you can always implement the same HTTPS / JSON APIs into the Compute Engine server. (using the language of your choice - most of them have decent JSON support). You will need to do some additional JSON encoding / decoding work, but this is probably small compared to the other work required to replace the automatic scaling and management that App Engine provides.

+1


source







All Articles