Een e-commerce site gebruikt een Lambda-functie die bestellingen naar een Amazon RDS for MySQL-database schrijft. De service moet orderbevestigingen onmiddellijk retourneren. Tijdens een marketingpiek zag het operations-team "too many connections"-fouten van RDS, hoewel de DB-clustermetrics een gezonde CPU en geheugen laten zien. Wat moet de ontwikkelaar doen om de verbindingsfouten op te lossen?
Kies een antwoord
Tik op een optie om je antwoord te controleren.
Correct antwoord: Open de databaseverbinding buiten de Lambda-handler. Gebruik Amazon RDS Proxy in plaats van Lambdas rechtstreeks met de database te laten verbinden..
Waarom dit het antwoord is
De "too many connections"-fouten, ondanks gezonde CPU en geheugen, duiden op een probleem met het beheer van databaseverbindingen, niet op een gebrek aan databasecapaciteit. Lambda-functies zijn stateless en kunnen bij hoge gelijktijdigheid veel nieuwe verbindingen openen, wat de limiet van de database snel kan overschrijden. RDS Proxy is de juiste oplossing omdat het verbindingen poolt en hergebruikt, waardoor het aantal open verbindingen met de database drastisch wordt verminderd. Het opent de databaseverbinding buiten de Lambda-handler, wat betekent dat de verbindingen persistent zijn over meerdere Lambda-invocaties heen, wat de overhead van het opzetten van nieuwe verbindingen vermindert. Het verhogen van maxuserconnections is een tijdelijke oplossing en pakt de onderliggende oorzaak van inefficiënt verbindingbeheer niet aan. Het bufferen van bestellingen met SQS FIFO-wachtrijen zou de onmiddellijke orderbevestiging vertragen, wat in strijd is met de vereiste.
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