The AWS Serverless Application Model (SAM) is an open-source framework for building serverless applications. It provides shorthand syntax to express functions, APIs, databases, and event source mappings. With just a few lines per resource, you can define the application you want and model it using YAML. During deployment, SAM transforms and expands the SAM syntax into AWS CloudFormation syntax, enabling you to build serverless applications faster. Why SAMSingle-deployment configuration. SAM makes it easy to organize related components and resources, and operate on a single stack. You can use SAM to share configuration (such as memory and timeouts) between resources, and deploy all related resources together as a single, versioned entity. Local debugging and testing. Use SAM CLI to locally build, test, and debug SAM applications on a Lambda-like execution environment. It tightens the development loop by helping you find & troubleshoot issues locally that you might otherwise identify only after deploying to the cloud. Deep integration with development tools. You can use SAM with a suite of tools you love and use. IDEs: PyCharm, IntelliJ, Visual Studio Code, Visual Studio, AWS Cloud9Build: CodeBuildDeploy: CodeDeploy, JenkinsContinuous Delivery Pipelines: CodePipelineDiscover Serverless Apps & Patterns: AWS Serverless Application RepositoryBuilt-in best practices. You can use SAM to define and deploy your infrastructure as configuration. This makes it possible for you to use and enforce best practices through code reviews. Also, with a few lines of configuration, you can enable safe deployments through CodeDeploy, and can enable tracing using AWS X-Ray. Extension of AWS CloudFormation. Because SAM is an extension of AWS CloudFormation, you get the reliable deployment capabilities of AWS CloudFormation. You can define resources by using CloudFormation in your SAM template. Also, you can use the full suite of resources, intrinsic functions, and other template features that are available in CloudFormation. Using AWS SAM for serverless application development saves a lot of time by eliminating much of the boilerplate that CFN templates require. It extends CFN with new resource types that follow AWS best practices and are more comfortable to use. The SAM CLI also generates code based on templates that are available online.A serverless application might use DynamoDB tables, S3 object storage, and Amazon API Gateway resources as components. The key benefit that AWS SAM provides is a new simplified syntax to describe the components being used. This template can be either a YAML or JSON file. CloudFormation files can be long and complex, so AWS invented AWS SAM. AWS SAM is an extension of CloudFormation that simplifies the development of serverless applications.#serverless #serverless architecture #serverless computing #cloud functions #aws lambda #serverless framework #aws serverless #serverless application #aws serverless architecture #serverless lambda #aws lambda nodejs #server less architecture #aws lambda #serverless functions #serverless examples #serverless npm