loading gif

Google App Engine's constraints

Author: Gokan EKINCI
First publication date: 2015-12-07
License: CC BY-NC-SA

When you are developping on the Cloud you have to know what your PAAS (Platform As A Service) allows you to do and what are the constraints you have. During my last year of Master degree I have developped some Java API for our PAAS (the multicast-wrapper API for the communication between our nodes in the IAAS, and cluster-postgresql which was our "Google Cloud SQL"-like API), this experience was so great that I miss university.

There is two kind of restrictions that you have to know:

So here I am going to list the constraints you may have when you are developping on Google App Engine.
Note: The official documentation of Google App Engine is here. My article was written in december 2015, so if you are in 2052 don't complain about its content.

Code constraints

Runtime constraints

Thread constraints

You cannot create Threads in a traditionnal way. Instanciating a Thread with new Thread() or using ThreadFactory Executors#defaultThreadFactory() are not allowed.

File constraints

You cannot write on project's files, but you can read from it.

Reflection API constraints

You can use reflection API as you wish for your personnal classes, but for JRE or Google App Engine classes you can only access to public members.

Native calls constraints

Other informations