Thanks for starting this discussion !
I noticed your article doesn’t really mention the difference between AppEngine Standard and AppEngine Flexible.
I don’t know if your familiar with these two AppEngines that basically only have in common their names. Several people I ran into a GCPNEXT were not aware of this, including people with a lot of knowledge on serverless/Lambda/GCF. Google is not doing good technical marketing around the AppEngine name.
- AppEngine *Standard*, which appeared in 2008, was billed by “CPU cycles” long before Lambda even existed. Much more granular than Lambda is right now. Execution time is super fast even on cold starts (especially in Python and Go). Unfortunately Google changed the pricing back in 2011 to bill by 15min increments, apparently because they had problems generating profits from the service. That is the service Snapchat is using.
- AppEngine Flexible, on the other hand is basically “container as a service” and is billed by the hour. Considering this, it is clearly not serverless.
I think that lack of awareness by many about these differences explains a lot about the confusion around the “Is AppEngine #serverless”.
Actually it’s probably not even possible to ask this question. One had to ask “Is AppEngine Standard #serverless” or “Is AppEngine Flexible #serverless”.
As a technical point, it might be interesting to add that AppEngine Standard shares its execution environment with Google Cloud Functions.
Considering this, if Google changed back it’s AppEngine Standard pricing back to something very granular like slices of 100ms or even just seconds (which I hope they do), the discussion would be different.
Don’t you think ?