Serverless concepts for Amazon Serverless Application Model
Learn about basic serverless concepts before using the Amazon Serverless Application Model (Amazon SAM).
Serverless concepts
- Event-driven architecture
-
A serverless application consists of individual Amazon services, such as Amazon Lambda for compute and Amazon DynamoDB for database management, that each perform a specialized role. These services are then loosely integrated with each other through an event-driven architecture. To learn more about event-driven architecture, see What is an Event-Driven Architecture?
. - Infrastructure as Code (IaC)
-
Infrastructure as Code (IaC) is a way of treating infrastructure in the same way that developers treat code, applying the same rigor of application code development to infrastructure provisioning. You define your infrastructure in a template file, deploy it to Amazon, and Amazon creates the resources for you. With IaC, you define in code what you want Amazon to provision. For more information, see Infrastructure as Code in the Introduction to DevOps on Amazon Amazon Whitepaper.
- Serverless technologies
-
With Amazon serverless technologies, you can build and run applications without having to manage your own servers. All server management is done by Amazon, providing many benefits such as automatic scaling and built-in high availability, letting you take your idea to production quickly. Using serverless technologies, you can focus on the core of your product without having to worry about managing and operating servers. To learn more about serverless, see the following:
-
Serverless Developer Guide – Provides a conceptual overview of serverless development in the Amazon Cloud.
For a basic introduction to the core Amazon serverless services, see Serverless 101: Understanding the serverless services
at Serverless Land. - Serverless Application
-
When you use Amazon SAM, you manage related resources in an application, which consists of your Amazon SAM project and template. All the resources in your application are defined or referred to in your Amazon SAM template. When Amazon SAM processes your template, it creates Amazon CloudFormation resources. In Amazon CloudFormation, resources are managed in a single unit called a stack, and all the resources in a stack are defined by the stack's Amazon CloudFormation template.