Publicado: Nov 25, 2019
O AWS Lambda agora oferece suporte a dois novos recursos para fornecer aos desenvolvedores controles adicionais sobre como processar chamadas assíncronas: Idade máxima do evento e Máximo de novas tentativas. Quando você invoca uma função de maneira assíncrona, o Lambda envia o evento para uma fila. Um processo separado lê eventos da fila e executa sua função. Esses dois novos recursos fornecem maneiras de controlar como os eventos são repetidos e quanto tempo eles podem permanecer na fila.
Idade máxima do evento
Quando uma função retorna um erro antes da execução, o Lambda retorna o evento para a fila e tenta executar a função novamente por até 6 horas, por padrão. Com a Idade máxima do evento, você pode configurar a vida útil de um evento na fila de 60 segundos a 6 horas. Isso permite remover eventos indesejados com base na idade do evento.
Máximo de novas tentativas
Quando uma função retorna um erro após a execução, o Lambda tenta executá-la mais duas vezes por padrão. Com o Máximo de novas tentativas, você pode personalizar o número máximo de tentativas de 0 a 2. Isso permite que você continue processando novos eventos com menos ou nenhuma tentativa.
Com esses dois recursos, os eventos são descartados ou enviados para uma fila de mensagens não entregues e/ou destinos Lambda quando uma destas duas condições é atendida: as novas tentativas atingem seu valor máximo ou a idade do evento atinge seu valor máximo.
Você pode começar com esses dois recursos via Console de Gerenciamento da AWS, ILC da AWS, AWS CloudFormation ou SDK da AWS para Lambda. Ele pode ser usado sem custo adicional em todas as regiões da AWS em que o AWS Lambda estiver disponível. Para obter mais informações sobre onde o AWS Lambda está disponível, consulte a tabela de regiões da AWS. Para saber mais, consulte Invocação assíncrona no Guia do desenvolvedor do AWS Lambda e esta publicação do blog.