0 votes
1 view
in GCP by (15.9k points)
recategorized by

Sorry, if this is a naive question, but I've watched a bunch of talks from google's staff and still don't understand why on earth I would use AE instead of CF?

If I understood it correctly, the whole concept of both of these services is to build "microservice architecture".

  • both CF and AE are stateless
  • both suppose to execute during a limited period of time
  • both can interact with DBS and other GCP APIs.

Though, AE must be wrapped into own server. Basically, it utilizes a lot of complexities on top of the same capabilities as CF. So, when should I use it instead of CF?

1 Answer

+1 vote
by (43.8k points)
selected by
 
Best answer

App Engine is better suited to applications, which have numerous pieces of functionality behaving in various inter-related (or even unrelated) ways, while cloud functions are more specifically single-purpose functions that respond to some event and executes some specific task.

 App Engine offers various options of language, which helps you write code in your favourable programming language and more management options, while cloud functions are restricted in those fields.You could easily copy Cloud Functions on App Engine, but replicating a large scale App Engine application using a bunch of discrete Could Functions would be difficult. For example, the backend of Spotify is App Engine based.

 Another way to put this is that for a significantly large application, starting with a more complex system like App Engine can lead to a codebase that is less complex, or at least, easier to manage or understand.

 Ultimately these both run on similar underlying infrastructure at Google, and it's up to you to decide which one works for the task at hand. Furthermore, there is nothing stopping you from mixing elements of both in a single project.

 

...