When comparing Google App Engine vs Google Cloud Functions, the Slant community recommends Google App Engine for most people. In the question“What are the best serverless frameworks?” Google App Engine is ranked 2nd while Google Cloud Functions is ranked 3rd. The most important reason people chose Google App Engine is:
Google App Engine integrates with Google's CDN out of the box and it distributes your application's assets through that, increasing loading speed considerably.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Increases application speed considerably
Google App Engine integrates with Google's CDN out of the box and it distributes your application's assets through that, increasing loading speed considerably.
Pro Easy to use
Google App Engine is very easy to use. All you need to do is install the SDK (which in itself is easy as well, and the documentation is very heplful) and run the command needed depending on the type of project to deploy it.
For example, to deploy a golang application, you run golang deploy
inside the project folder and it will be automatically deployed.
Pro Supports multiple languages
Cloud Functions, as of this writing, supports JavaScript, Python, Go and Java.
Pro Supports multiple sources of events
Cloud Functions can be triggered from PubSub and from HTTP events, for example.
Pro Frictionless to create
There is an inline editor in Google Cloud for writing and submitting/deploying cloud functions, so while it is possible to store a Cloud function as code in a repository you can try and experiment without getting to that point.
Cons
Con Not a core Google product faces uncertin future
Google is notorious with flipping on technology directions, this product is clearly not the focus of Google.
Con Expenses are very hard to control
The monitoring for expenses is limited at best.
Con Problematic support even in the paid grade
Con No SQL database available
Google App Engine uses Google's NoSQL cloud database. There's no option to use a SQL database with your application.
Con Limited languages and dependencies
Only the set of languages explicitly supported by Cloud Functions can be used; for more flexibility, I would highly recommend Google's other serverless environment, namely Cloud Run.