{{ .Params.hero.body | markdownify }}
Serverless, or function-based, computing enables you to build and run applications and services without thinking about the server infrastructure on which the functions depend. 'Serverless' applications of course require servers (typically cloud infrastructure, or Kubernetes clusters), but don't require you to provision, scale, and manage any servers.
The reduced operational overhead of serverless computing means teams can focus on the business and application logic they need: the development of products vs the management of the infrastructure for them.
Building serverless applications can be considered to be a composition of a series of standardized building blocks. For instance, serverless services can provide compute, storage, data storage, messaging/queues and orchestration. With just those blocks, extremely powerful applications can be composed and delivered with minimal infrastructure concerns.
Building Block | AWS | Azure | Google Cloud |
---|---|---|---|
API | Lambda | Functions | Cloud Functions |
Storage | S3 | Blob Storage | Cloud Storage |
Data Storage | DynamoDB | Cosmos DB | Cloud Datatable |
Timer | CloudWatch | Monitor | Stackdriver Monitoring |
Queue | SQS | Queue Storage | Cloud Pub/Sub |
Topic | SNS | Queue Storage | Cloud Pub/Sub |
Pulumi makes it simple to interact with serverless services available from the major cloud vendors, and with Kubernetes.