Une fonction Lambda est déclenchée par une file d'attente SQS et appelle une API ML tierce qui peut prendre jusqu'à 60 secondes pour répondre. Le délai d'expiration de la fonction Lambda est de 65 secondes. Le développeur constate que la fonction traite parfois des messages SQS en double. Que doit modifier le développeur pour que la fonction ne traite pas les doublons ?
Choisissez une réponse
Appuyez sur une option pour vérifier votre réponse.
Bonne réponse : Définir le délai de visibilité de la file d'attente SQS pour qu'il soit supérieur au temps de réponse maximal de l'API tierce..
Pourquoi c'est la réponse
Le délai de visibilité (Visibility Timeout) de SQS détermine la durée pendant laquelle un message est invisible pour les autres consommateurs après avoir été récupéré. Si le traitement du message par la fonction Lambda prend plus de temps que le délai de visibilité, le message redevient visible dans la file d'attente et peut être traité à nouveau par une autre instance Lambda, entraînant des doublons. En définissant le délai de visibilité pour qu'il soit supérieur au temps de réponse maximal de l'API tierce (60 secondes), on s'assure que la fonction Lambda dispose de suffisamment de temps pour traiter le message et le supprimer de la file avant qu'il ne redevienne visible. Augmenter l'allocation de mémoire ou le délai d'expiration de la fonction Lambda n'empêchera pas les doublons si le délai de visibilité est trop court. Le délai de livraison (Delivery Delay) retarde l'apparition initiale d'un message dans la file d'attente, ce qui n'est pas pertinent ici.
Réussissez votre examen — sans la chasse aux réponses interminable
Obtenez toutes les questions et explications vérifiées pour cet examen en un seul endroit, et économisez des heures de préparation. Plus de 1 000 certifications · Plus de 20 langues · Gratuit pour commencer.
Réussissez votre examen plus rapidement → Pas de carte requise