Een Step Functions-statusmachine pauzeert wanneer deze een bestelling ontvangt, totdat een andere service de bestelling bevestigt door een record toe te voegen aan een DynamoDB-tabel. Welke oplossing zorgt ervoor dat de statusmachine de verwerking hervat nadat het DynamoDB-record verschijnt?
Kies een antwoord
Tik op een optie om je antwoord te controleren.
Correct antwoord: Abonneer een Lambda-functie op de DynamoDB-stream zodat de functie wordt uitgevoerd wanneer een nieuw record wordt toegevoegd. Wanneer de functie het juiste record ontvangt, roep dan de Step Functions redrive execution command aan op de actieve statusmachine..
Waarom dit het antwoord is
De correcte optie is om een Lambda-functie te abonneren op de DynamoDB-stream. Wanneer een nieuw record wordt toegevoegd, triggert de stream de Lambda-functie. De functie kan dan controleren of het het juiste bevestigingsrecord is en vervolgens de Step Functions SendTaskSuccess API aanroepen om de wachtende statusmachine te hervatten. Dit is een efficiënte, gebeurtenisgestuurde aanpak die onmiddellijk reageert op de beschikbaarheid van het record zonder onnodig te pollen. De optie om de statusmachine te laten pollen met een GetItem-status is inefficiënt en kan leiden tot hoge kosten en vertragingen, omdat het constant de DynamoDB-tabel controleert. Het stoppen van de huidige uitvoering en het starten van een nieuwe uitvoering verliest de context van de oorspronkelijke uitvoering en is geen geschikte manier om een pauze te overbruggen. De optie om een Lambda-functie continu te laten pollen is ook inefficiënt en kan leiden tot timeouts en onnodige kosten.
Slaag voor je examen — zonder eindeloos zoeken naar antwoorden
Krijg elke geverifieerde vraag en uitleg voor dit examen op één plek, en bespaar uren voorbereiding. Meer dan 1.000 certificeringen · Meer dan 20 talen · gratis om te beginnen.
Slaag sneller voor je examen → Geen kaart nodig