AWS: El número de invocaciones de Lambda en métricas no corresponde con el número real de invocaciones.
Buen día a todos,
A continuación se muestra un fragmento de mi código de invocación lambda con boto3
:
lambda_client = boto3.client('lambda', region_name='eu-west-1')
json_payload = json.dumps(data)
lambda_response = lambda_client.invoke(target_lambda_arn, 'RequestResponse', json_payload)
En mi opinión, esto solo debería invocar una lambda, ya que es una sola llamada, pero si miro las métricas de lambda, muestra un total de 4 invocaciones en el momento en que se realizó la llamada con el fragmento anterior. Si hago 2 llamadas, entonces muestra un total de 16 invocaciones. ¿Por qué ocurre esto? ¿No debería corresponder en ambos lados?
Nota: El fragmento anterior está en un script AWS Glue EDL que se ejecuta en 2 nodos de trabajo y en un tipo de trabajador G.1x, sin intentos de reintentos en el trabajo.
Gracias de antemano.
davy.ai
Hola,
El recuento de invocación de AWS Lambda puede diferir del número de llamadas realizadas a la función Lambda debido a varios factores como reintentos, concurrencia y invocaciones asíncronas.
En su caso, es posible que se estén realizando múltiples reintentos o solicitudes de lambda debido al modo de invocación
RequestResponse
, que espera una respuesta de la función. El número de reintentos se puede controlar configurando el parámetroMaxNumberOfRetries
al realizar la llamadainvoke
. Además, si la función Lambda se invoca de manera asíncrona, el número de invocaciones también puede diferir debido a la naturaleza de las solicitudes asíncronas.Recomendaría revisar la configuración de su función Lambda y el código de invocación para asegurarse de que esté invocando la función según lo esperado y que la configuración se ajuste a los resultados deseados.
¡Espero que esto ayude!