Een verouderde applicatie is gemigreerd naar een Lambda-functie die aan het einde van de maand veel API-aanroepen van derden uitvoert om gegevens op te halen, en deze vervolgens verwerkt om maandelijkse rapporten te produceren. De externe provider heeft limieten geïntroduceerd: een vast aantal API-aanroepen per minuut en per dag (vermeld in response headers), waarbij fouten worden geretourneerd wanneer de limieten worden overschreden. De gehele gegevensverwerking kan nu dagen duren als de app moet throttlen om te voorkomen dat de limieten worden overschreden. Wat is de meest operationeel efficiënte manier om deze serverless workflow te refactoren om die limieten te respecteren?
Kies een antwoord
Tik op een optie om je antwoord te controleren.
Correct antwoord: Gebruik een AWS Step Functions state machine om de aanroepen te orkestreren. Wanneer fouten rate limits aangeven, gebruik dan een Wait state om verdere aanroepen uit te stellen voordat u het opnieuw probeert..
Waarom dit het antwoord is
AWS Step Functions is de meest operationeel efficiënte oplossing omdat het inherent is ontworpen voor het orkestreren van workflows, inclusief retries met vertragingen. De Wait state kan worden gebruikt om de uitvoering te pauzeren wanneer rate limits worden gedetecteerd, en vervolgens de verwerking te hervatten. Dit zorgt voor een gecontroleerde en adaptieve aanpak zonder handmatige polling of complexe code. Het gebruik van een SQS-wachtrij met polling door Lambda is minder efficiënt omdat de Lambda continu moet controleren, wat kan leiden tot onnodige kosten en complexiteit bij het dynamisch aanpassen aan veranderende rate limits. CloudWatch Logs metrics en alarms zijn reactief en stoppen de Lambda pas nadat de limieten zijn overschreden, wat niet proactief genoeg is. Kinesis Data Firehose is bedoeld voor het streamen van grote hoeveelheden gegevens en is niet geschikt voor het orkestreren van API-aanroepen met rate limiting.
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