Introducción alAWS SAMAcelerar - AWS Serverless Application Model

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Introducción alAWS SAMAcelerar

En este tema, se describe lo que necesita utilizarAWS SAMAcelere y proporciona instrucciones para crear e implementar una aplicación sencilla.

Requisitos previos

Para utilizar elAWS SAMAcelerar, debe instalar la versión 1.53.0 o superior delAWS SAMCLI. Para obtener las instrucciones de instalación, consulte Instalación de la CLI de AWS SAM.

Tutorial de introducción a Accelerate

En esta guía, descargará, compilará e implementará una aplicación de ejemplo de tipo «hola mundo» medianteAWS SAM. Luego haces un cambio de código queAWS SAMAcelerate implementa y prueba automáticamente la aplicación enNube de AWS.

Esta aplicación implementa un backend de API básico.

Requisitos previos

En este tutorial, se supone que está familiarizado con los conceptos básicos deAWS SAM. Para ver un tutorial más detallado, consulteTutorial: Implementar una aplicación Hello World.

Paso 1: Descargue una muestraAWS SAMaplicación

Comando para ejecutar:

sam init --app-template hello-world --name sam-tutorial --package-type Zip --runtime python3.9

Para este tutorial, utilizamos una aplicación Python «Hello World» con unZiptipo de paquete.

Paso 2: Iniciar sam sync —watch

En primer lugar, cambie alsam-tutorialdirectorio, donde eltemplate.yamlse encuentra el archivo de la aplicación de ejemplo. A continuación, ejecute el siguiente comando para iniciar un proceso que vigile la aplicación sin servidor en busca de cambios. Responder conYcuando se le pida que confirme que desea utilizar la función de vista previa.

sam sync --watch --stack-name sam-app

La primera vez que ejecutas elsync --watchcomando,AWS SAMinicia unAWS CloudFormationImplementación de Tras el despliegue,AWS SAMbusca cambios en la aplicación sin servidor. Para cambios posteriores en los recursos de código, como las funciones de Lambda,AWS SAMimplementa automáticamente los cambios mediante API de servicio. Para cambios en la infraestructura, como las funciones de IAM,AWS SAMinicia automáticamente unAWS CloudFormationImplementación de

Paso 3: Realice un cambio en su aplicación

Con lasync --watchproceso en ejecución, actualice el código de función local de Lambda.AWS SAMcrea automáticamente la función Lambda e implementa la actualización en elNube de AWS.AWS SAMllama a una API de Lambda para actualizar el código de tu función, en lugar de implementar tuAWS CloudFormationpila. El cambio debería tardar unos segundos en implementarse.

Cambie su código de función a lo siguiente para escribirInvoking the updated functiona los registros de funciones de Lambda:

import json def lambda_handler(event, context): print("Invoking the updated function") return { "statusCode": 200, "body": json.dumps({ "message": "hello world", }), }

Paso 4: Probar la aplicación y comprobar los registros

Invoca tu API mediantecurly, a continuación, compruebe los registros de la función de Lambda.

curl https://restapiid.execute-api.us-east-1.amazonaws.com/Prod/hello/

Usarlogspara obtener registros de la aplicación.

sam logs --tail

Si veInvoking the updated functionen los registros, ha implementado correctamente las actualizaciones de funciones de Lambda en elNube de AWS.

nota

Dado que Accelerate utilizó una API de Lambda para actualizar el código de función, suAWS CloudFormationstack no refleja la actualización de tu aplicación. Para actualizar suAWS CloudFormationapilar con los últimos cambios, ejecutarsam sync.

Eliminar recursos

Si ya no necesitaAWSrecursos que creó ejecutando este tutorial, puede eliminarlos eliminandoAWS CloudFormationpila que implementaste.

Para eliminar elAWS CloudFormationstack, usa elsam --deletecomando:

sam delete --stack-name sam-app

Conclusión

En este tutorial, ha realizado lo siguiente:

  1. Creación, compilación e implementación de una aplicación sin servidor paraAWSconAWS SAM.

  2. Usadasam sync --watchpara implementar automáticamente cambios enNube de AWS.

  3. Probó su aplicación en elNube de AWS.

  4. Eliminado elAWSrecursos que ya no necesite.