Utilización de AWS Lambda con otros servicios - AWS Lambda

Utilización de AWS Lambda con otros servicios

AWS Lambda se integra con otros servicios de AWS para invocar funciones o realizar otras acciones. A continuación se indican algunos casos de uso comunes:

En función del servicio que esté utilizando con Lambda, la invocación generalmente puede funcionar de dos maneras. Un evento impulsa la invocación o Lambda sondea una cola o un flujo de datos e invoca la función en respuesta a la actividad de la cola o el flujo de datos. Lambda se integra con Amazon Elastic File System y AWS X-Ray de una forma que no implica invocar funciones.

Para obtener más información, consulte Invocación basada en eventos y Sondeo de Lambda. También puede buscar el servicio con el que desea trabajar en la sección siguiente para encontrar un enlace a información sobre el uso de ese servicio con Lambda.

Busque el servicio con el que desea trabajar en la tabla siguiente para determinar qué método de invocación debe utilizar. Siga el enlace del nombre del servicio para encontrar información sobre cómo configurar la integración entre los servicios. En estos temas también se incluyen eventos de ejemplo que puede utilizar para probar la función.

sugerencia

Las entradas de esta tabla se presentan en orden alfabético según el nombre del servicio, excepto el prefijo “AWS” o “Amazon”. También puede utilizar la funcionalidad de búsqueda de su navegador para encontrar el servicio en la lista.

Servicio Método de invocación

Amazon Alexa

Invocación síncrona basada en eventos

Amazon Managed Streaming for Apache Kafka

Sondeo de Lambda

Apache Kafka autoadministrado

Sondeo de Lambda

Amazon API Gateway

Invocación síncrona basada en eventos

AWS CloudFormation

Invocación asíncrona basada en eventos

Amazon CloudFront (Lambda@Edge)

Invocación síncrona basada en eventos

Amazon EventBridge (CloudWatch Events)

Invocación asíncrona basada en eventos

Amazon CloudWatch Logs

Invocación asíncrona basada en eventos

AWS CodeCommit

Invocación asíncrona basada en eventos

AWS CodePipeline

Invocación asíncrona basada en eventos

Amazon Cognito

Invocación síncrona basada en eventos

AWS Config

Invocación asíncrona basada en eventos

Amazon Connect

Invocación síncrona basada en eventos

Amazon DynamoDB

Sondeo de Lambda

Amazon Elastic File System

Integración especial

Elastic Load Balancing (balanceador de carga de aplicaciones)

Invocación síncrona basada en eventos

AWS IoT

Invocación asíncrona basada en eventos

AWS IoT Eventos de

Invocación asíncrona basada en eventos

Amazon Kinesis

Sondeo de Lambda

Amazon Kinesis Data Firehose

Invocación síncrona basada en eventos

Amazon Lex

Invocación síncrona basada en eventos

Amazon MQ

Sondeo de Lambda

Amazon Simple Email Service

Invocación asíncrona basada en eventos

Amazon Simple Notification Service

Invocación asíncrona basada en eventos

Amazon Simple Queue Service

Sondeo de Lambda

Amazon Simple Storage Service (Amazon S3)

Invocación asíncrona basada en eventos

Amazon Simple Storage Service Batch

Invocación síncrona basada en eventos

Secrets Manager

Invocación síncrona basada en eventos

AWS X-Ray

Integración especial

Invocación basada en eventos

Algunos servicios generan eventos que pueden invocar su función de Lambda. Para obtener más información acerca del diseño de estos tipos de arquitecturas, consulte Arquitecturas controladas por eventos en la Guía del operador de Lambda.

Cuando implementa una arquitectura basada en eventos, concede permiso al servicio de generación de eventos para invocar la función en su política basada en recursos. A continuación, configure ese servicio para generar eventos que invoquen su función.

Los eventos son datos estructurados en formato JSON. La estructura JSON varía según el servicio que la genera y el tipo de evento, pero todas contienen los datos que la función necesita para procesar el evento.

Lambda convierte el documento de evento en un objeto y se lo pasa al controlador de la función. Para los lenguajes compilados, Lambda proporciona las definiciones de los tipos de eventos en una biblioteca. Para obtener más información, consulte el tema sobre la creación de funciones con su lenguaje: Creación de funciones Lambda con C#, Creación de funciones de Lambda con Go, Creación de funciones de Lambda con Java o Creación de funciones de Lambda con PowerShell.

En función del servicio, la invocación basada en eventos puede ser síncrona o asíncrona.

  • Para la invocación síncrona, el servicio que genera el evento espera la respuesta de la función. Ese servicio define los datos que la función necesita devolver en la respuesta. El servicio controla la estrategia de error, como, por ejemplo, si se debe reintentar en caso de errores. Para obtener más información, consulte Invocación síncrona.

  • Para la invocación asíncrona, Lambda coloca el evento en la cola antes de pasárselo a la función. Cuando Lambda pone en cola el evento, envía inmediatamente una respuesta de operación correcta al servicio que lo generó. Después de que la función procese el evento, Lambda no devuelve una respuesta al servicio de generación de eventos. Para obtener más información, consulte Invocación asincrónica.

Para obtener más información sobre cómo Lambda administra el control de errores de las funciones invocadas de forma síncrona y asíncrona, consulte Control de errores y reintentos automáticos en AWS Lambda.

Sondeo de Lambda

En el caso de los servicios que generan una cola o un flujo de datos, configure un mapeo de fuentes de eventos en Lambda para que sondee la cola o el flujo de datos.

Cuando implementa una arquitectura de sondeo de Lambda, concede permiso a Lambda para acceder al otro servicio en el rol de ejecución de la función. Lambda lee datos del otro servicio, crea un evento e invoca su función.