Skip to content

Serverless Compute

As stated by AWS Serverless definitions

What is serverless?

Serverless is the native architecture of the cloud that enables you to shift more of your operational responsibilities to AWS, increasing your agility and innovation. Serverless allows you to build and run applications and services without thinking about servers. It eliminates infrastructure management tasks such as server or cluster provisioning, patching, operating system maintenance, and capacity provisioning. You can build them for nearly any type of application or backend service, and everything required to run and scale your application with high availability is handled for you.

Why use serverless?

Serverless enables you to build modern applications with increased agility and lower total cost of ownership. Building serverless applications means that your developers can focus on their core product instead of worrying about managing and operating servers or runtimes, either in the cloud or on-premises. This reduced overhead lets developers reclaim time and energy that can be spent on developing great products which scale and that are reliable.

leverage-aws-serverless

Figure: AWS serverless architecture diagram (just as reference). (Source: Nathan Peck, "Designing a modern serverless application with AWS Lambda and AWS Fargate", Containers-on-AWS Medium Blog post, accessed November 18th 2020).

Serverless Compute aws-service Services

  • AWS Lambda lets you run code without provisioning or managing servers. You pay only for the compute time you consume - there is no charge when your code is not running.
  • Lambda@Edge allows you to run Lambda functions at AWS Edge locations in response to Amazon CloudFront events.
  • AWS Fargate is a purpose-built serverless compute engine for containers. Fargate scales and manages the infrastructure required to run your containers.