Modos de invocación de Lambda
La API Invoke se puede llamar en dos modos: el modo de evento y el modo solicitud-respuesta.
-
El modo de evento pone en cola la carga para realizar una invocación asíncrona.
-
El modo de solicitud-respuesta invoca sincrónicamente la función con la carga proporcionada y devuelve una respuesta de inmediato.
En ambos casos, la ejecución de la función siempre se lleva a cabo en un entorno de ejecución de Lambda, pero la carga toma rutas diferentes. Para obtener más información, consulte “Entornos de ejecución de Lambda” en este documento.
También puede utilizar otros servicios de AWS que realicen invocaciones en su nombre. El modo de invocación que se utilice depende del servicio de AWS que use y de la forma en que esté configurado. Para obtener información adicional sobre cómo se integran otros servicios de AWS con Lambda, consulte Uso de AWS Lambda con otros servicios.
Cuando Lambda recibe una invocación de solicitud-respuesta, se pasa directamente al servicio de invocación. Si el servicio de invocación no está disponible, los autores de la llamada pueden poner en cola temporalmente la carga del lado del cliente para volver a intentar la invocación un número determinado de veces. Si el servicio de invocación recibe la carga, el servicio intenta identificar un entorno de ejecución disponible para la solicitud y pasa la carga a ese entorno para completar la invocación. Si no existe ningún entorno de ejecución o no hay ninguno que sea apropiado, se crea uno dinámicamente en respuesta a la solicitud. Mientras están en tránsito, las cargas de invocación enviadas al servicio de invocación están protegidas con TLS 1.2+. El tráfico dentro del servicio Lambda (desde el equilibrador de carga hacia abajo) pasa a través de una nube virtual privada (VPC) interna aislada, que es propiedad del servicio Lambda, dentro de la región de AWS a la que se envió la solicitud.

Figura 2: Modelo de invocación de solicitud-respuesta de AWS Lambda
Las cargas del modo de invocación de eventos siempre se ponen en cola para procesarlas antes de la invocación. Todas las cargas se ponen en cola para procesarlas en una cola de Amazon Simple Queue Service
La flota de sondeadores de Lambda recupera los eventos en cola en lotes. La flota de sondeadores es un grupo de instancias de EC2 cuyo propósito es procesar invocaciones de eventos en cola que aún no se han procesado. Cuando la flota de sondeadores recupera un evento en cola que tiene que procesar, lo hace pasándoselo al servicio de invocación tal y como lo haría un cliente en una invocación en modo de solicitud-respuesta.
Si no se puede realizar la invocación, la flota de sondeadores almacena temporalmente el evento en memoria en el host hasta que pueda realizar correctamente la ejecución o hasta que se haya superado el número de intentos de ejecución. Nunca se escriben datos de carga en el disco en la propia flota de sondeadores. La flota de sondeadores se puede asignar a todos los clientes de AWS, lo que permite conseguir el tiempo de invocación mínimo. Para obtener más información sobre qué servicios pueden utilizar el modo de invocación de eventos, consulte Uso de AWS Lambda con otros servicios.