Overview#
Functions as a Service (FaaS Cloud functions) is a Cloud Services Model where some amount of server-side logic is still written by the application developer but unlike traditional architectures is run in stateless compute containers that are event-triggered, ephemeral (may only last for one invocation), and fully managed by a Cloud Service Provider.Building an application following this model is one way of achieving a "serverless" architecture, and is typically used when building microservices based applications.
Some implementations are:
- picos
- AWS Lambda
- Webtask
- OpenWhisk (Apache and IBM)
- Azure Functions
- Google Cloud Functions
- Cloudflare Workers
- Many Others.
Functions as a Service all use the same basic Serverless event-triggered structure consisting of:
- Trigger (Event-triggered) - A class of event emitted by event sources.
- Actions - Encapsulate the actual code to be executed
- Rules - provide association between a Event-triggered and an action.
Functions as a Service and Synchronous Operation and Asynchronous Operation#
- Synchronous Operation - (Webhook) gRPC???
- Asynchronous Operation - Primarily used for background operations uses Publish-Subscribe and the outcome is not required in real time. Typically used with a call-back.