Ir para o conteúdo

Como evito invocações duplicadas de funções do Lambda?

3 minuto de leitura
0

Minha função do AWS Lambda recebeu mais de uma solicitação de invocação para um único evento.

Breve descrição

Para invocações síncronas, os clientes e os serviços da AWS que invocam uma função do Lambda tentam realizar a operação novamente. Para invocações assíncronas, o Lambda realiza novas tentativas automaticamente duas vezes em caso de erro.

Resolução

Para evitar invocações duplicadas de funções do Lambda, realize as seguintes ações com base no método de invocação que você usa.

Observação: para solucionar falhas de invocação de função, consulte Como soluciono problemas de falhas na função do Lambda?

Invocação assíncrona

Verifique os Amazon CloudWatch Logs da função do Lambda. Verifique se as invocações duplicadas têm o mesmo ID de solicitação e se elas retornaram erros ou atingiram o tempo limite.

Em seguida, faça o seguinte com base no seu caso de uso:

Para invocações duplicadas que retornaram erros ou atingiram o tempo limite e que têm o mesmo ID de solicitação

Observação: invocações duplicadas que retornam erros ou atingem o tempo limite e que têm o mesmo ID de solicitação indicam que o serviço do Lambda tentou executar a função novamente.

Configure o tratamento de erros para invocações assíncronas para reduzir o número de vezes que sua função do Lambda tenta executar novamente solicitações de invocação assíncrona que falharam.

Para invocações duplicadas que não retornaram erros ou atingiram o tempo limite

Observação: invocações duplicadas que não retornam erros ou atingiram o tempo limite indicam novas tentativas do lado do cliente.

Conclua as seguintes ações:

Observação: para solucionar falhas de invocação de função, consulte Como soluciono problemas de falhas na função do Lambda?

Invocações síncronas

Observação: o comportamento de novas tentativas de invocação síncrona varia entre os serviços da AWS com base no mapeamento da origem do evento de cada serviço. Para obter mais informações, consulte Invocando o Lambda com eventos de outros serviços da AWS.

Certifique-se de que o código da sua função do Lambda seja idempotente e capaz de lidar com mensagens várias vezes. Em seguida, identifique e resolva quaisquer erros que sua função do Lambda retornar.

Informações relacionadas

Working with CloudTrail event history (Trabalhando com o histórico de eventos do CloudTrail)

Práticas recomendadas para trabalhar com funções do AWS Lambda

AWS OFICIALAtualizada há 8 meses