Publié le: Nov 25, 2019

AWS Lambda prend désormais en charge deux nouvelles fonctionnalités pour fournir aux développeurs des contrôles supplémentaires sur la manière de traiter les appels asynchrones.: Maximum Event Age (Âge maximal de l'événement) et Maximum Retry Attempts (Nombre maximal de tentatives). Lorsque vous appelez une fonction de manière asynchrone, Lambda envoie l'événement à une file d'attente. Un processus séparé lit les événements de la file d'attente et exécute votre fonction. Ces deux nouvelles fonctionnalités permettent de contrôler la manière dont les événements sont retentés et la durée pendant laquelle ils peuvent rester dans la file d’attente.

Maximum Event Age (Âge maximal de l'événement)

Lorsqu'une fonction renvoie une erreur avant l'exécution, Lambda renvoie l'événement à la file d'attente et tente de l'exécuter à nouveau jusqu'à 6 heures par défaut. Avec l'âge maximal de l'événement, vous pouvez définir la durée de vie d'un événement dans la file d'attente entre 60 secondes et 6 heures. Cela vous permet de supprimer tous les événements indésirables en fonction de leur âge.

Maximum Retry Attempts (Nombre maximal de tentatives)

Lorsqu'une fonction renvoie une erreur après l'exécution, Lambda tente de l'exécuter deux fois de plus par défaut. Avec le nombre maximal de tentatives, vous pouvez personnaliser le nombre maximal de tentatives entre 0 et 2. Cela vous donne la possibilité de continuer à traiter de nouveaux événements avec peu de tentatives ou aucune.

Avec ces deux fonctions, les événements sont supprimés ou envoyés à une file d'attente de lettres mortes et/ou des destinations Lambda lorsque l'une de ces deux conditions est remplie : le nombre maximal de tentatives est atteint ou l'âge maximal d'événement est atteint.

Vous pouvez commencer à utiliser ces fonctionnalités via AWS Management Console, l'interface de ligne de commande (CLI) AWS, AWS CloudFormation ou AWS SDK for Lambda. Vous pouvez utiliser la fonction sans frais additionnels dans toutes les régions où AWS Lambda est disponible. Pour en savoir plus sur la disponibilité d'AWS Lambda, consultez le tableau des régions AWS. Pour en savoir plus, consultez Appel asynchrone dans le guide du développeur AWS Lambda Developer et cet article de blog.