PaaS from Google, give it some code and it will run it and scale it automatically
Dmitry Sadovnychyi profile photo
Updated August 17, 2019

PaaS from Google, give it some code and it will run it and scale it automatically

Score 10 out of 10
Vetted Review
Verified User
Review Source

Overall Satisfaction with Google App Engine

It serves all our traffic to end users, which is basically one of the most important things for our organization.
  • Serving traffic to end users. It can scale automatically when traffic spikes.
  • The standard environment has some limitations, but it encourages you to write "scalable" code.
  • With Flexible Environment, you can serve any Docker container you want, still taking advantage of auto scaling.
  • Easy integration with other Google Cloud products, e.g. Datastore, Pub/Sub, Cloud Storage, etc.
  • Flexible environment needs scaling to zero and support for all APIs available in Standard Environment like ndb for Python and Task Queue.
  • Standard Environment needs to update some outdated libraries like lxml for Python.
  • Instance pricing of Standard Environment could be lowered, since it wasn't updated for many years.
  • It serves traffic very well with almost zero down time – it's always positive impact.
You can spawn up your own cluster using Kubernetes or Container Engine which will scale automatically when configured properly, but you have to keep an eye on that cluster. In App Engine you don't have to worry about it at all, just ship your code and it will run.
It's a good use case to use App Engine when you need to serve traffic to large amount of users, but you should avoid doing any computation on it. It's better to use Compute Engine or Dataflow to process your data. It has a free tier so it's very useful for non-yet-existing startups.

Google App Engine Feature Ratings

Scalability
10
Platform management overhead
10
Workflow engine capability
9
Platform access control
9
Services-enabled integration
9
Development environment creation
10
Development environment replication
10
Issue monitoring and notification
Not Rated
Issue recovery
Not Rated
Upgrades and platform fixes
Not Rated

Using Google App Engine

ProsCons
Like to use
Relatively simple
Easy to use
Technical support not required
Well integrated
Consistent
Quick to learn
Convenient
Feel confident using
None
  • Scaling -- you just focus on writing your code without worrying about how to scale it.
  • Versioning -- you can deploy multiple versions of your app and run them at the same time to perform QA, internal testing, public testing, a/b testing, etc.
  • Datastore -- very scalable as long as you understand limitations, can write tens of thousands of entities from e.g. Dataflow/Apache Beam without any issues, and they are immediately ready to be served to end users.
  • Migration to 2nd gen runtimes is hard, but they do provide a lot of benefit as well (ability to run any compiled code).
  • No (good) full text search solution. While you can scale the datastore as much as you want, you have to go for third party solutions (e.g. elasticsearch) for full text search. Built-in Search API (which is not available on second-gen runtimes) is very limited and does not perform well.
Yes - It's OK, they provide some basic monitoring tools.