Un développeur utilise AWS Step Functions où chaque étape invoque une fonction Lambda. La machine d'état échoue dans la tâche GetResource avec soit IllegalArgumentException, soit TooManyRequestsException. Exigence : lorsqu'une IllegalArgumentException se produit, la machine d'état doit s'arrêter immédiatement. Lorsqu'une TooManyRequestsException se produit, la machine d'état doit réessayer la tâche GetResource une fois de plus après un délai de 10 secondes ; si cette nouvelle tentative échoue, la machine d'état doit s'arrêter. Comment le développeur peut-il implémenter le comportement de nouvelle tentative de Lambda sans ajouter d'étapes supplémentaires à la machine d'état ?
Choisissez une réponse
Appuyez sur une option pour vérifier votre réponse.
Bonne réponse : Ajoutez une politique de Retry à l'état GetResource. Configurez le Retry avec le type d'erreur TooManyRequestsException, un intervalle de 10 secondes et une valeur de tentatives maximales de 1..
Pourquoi c'est la réponse
L'option correcte est d'ajouter une politique de Retry à l'état GetResource car Step Functions permet de définir des politiques de nouvelle tentative directement dans la définition de l'état. Cette approche est la plus simple et la plus idiomatique pour gérer les nouvelles tentatives sans ajouter d'étapes supplémentaires. En configurant le Retry pour TooManyRequestsException avec un intervalle de 10 secondes et un nombre maximal de tentatives de 1, la machine d'état réessaiera une fois après 10 secondes, puis s'arrêtera si la nouvelle tentative échoue. Pour IllegalArgumentException, un Catcher par défaut ou une absence de Retry spécifique entraînera l'arrêt immédiat, comme requis. Les autres options sont incorrectes : Ajouter un état Delay et un Catcher redirigeant vers Delay puis GetResource ajouterait des étapes supplémentaires, ce qui est explicitement interdit par la question. Un Catcher est utilisé pour gérer les erreurs et définir l'état suivant, mais il n'implémente pas directement une logique de nouvelle tentative avec un délai et un nombre de tentatives comme le fait une politique de Retry. Dupliquer l'état GetResource et utiliser un Catcher pour passer à une copie (TryAgain) ajouterait également des étapes supplémentaires et rendrait la machine d'état plus complexe inutilement.
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