Amazon SOA-C02: Serverless en Applicatie-integratie — Studiegids

Onderdeel van de AWS SysOps Administrator Associate SOA-C02 — Studiegids. Oefen met geverifieerde antwoorden in het Amazon-examencentrum, of doe getimede oefentests op ExamRoll.io.

Serverless en applicatie-integratie omvat het uitvoeren van event-driven applicaties zonder servers te beheren en het betrouwbaar verbinden van services. Het operationele belang ligt in het beheren van schaal, latency, faalscenario’s en least-privilege toegang, terwijl de kosten voorspelbaar blijven. Dit domein richt zich op het gedrag van Lambda (cold starts, concurrency), betrouwbare levering van events (EventBridge, SNS, SQS), beveiligingsmaatregelen (execution roles en permissies), en observability voor asynchrone flows.

Operationele aspecten en concurrency van AWS Lambda

De prestaties en beschikbaarheid van Lambda zijn afhankelijk van cold starts, concurrency-limieten en throttling-controles. Cold starts treden op wanneer Lambda een nieuwe execution environment moet initialiseren; verminder de impact door provisioned concurrency te gebruiken (

undefined

) voor latency-kritieke paden, en geef de voorkeur aan lichtere runtimes of minder initialisatiewerk. Reserveer en beperk concurrency met reserved concurrency (

undefined

) om downstream services te beschermen en quota per functie af te dwingen; monitor de CloudWatch-metrics ConcurrentExecutions en Throttles.

Retry- en invocation-modellen verschillen per modus: synchrone aanroepen (API Gateway, directe Invoke) retourneren fouten onmiddellijk; asynchrone aanroepen (EventBridge, SNS, S3 async notifications) gebruiken het asynchrone retry-beleid van Lambda (twee retries met backoff) en kunnen DLQ’s of destinations gebruiken. Voor event source mappings (SQS, Kinesis, DynamoDB streams) probeert de poller van Lambda het opnieuw totdat het bericht verloopt of het redrive-beleid van de event source een dead-letter activeert. Configureer timeout en geheugen conservatief (

undefined

) en stel de SQS visibility timeout in op > function timeout (aanbevolen: visibility >= function timeout * 2) om dubbele verwerking te verminderen.

Event-driven architecturen met EventBridge

EventBridge biedt een beheerde event bus met flexibele routing, een schema registry, cross-account levering en retry/DLQ-instellingen. Gebruik custom event buses voor domeinscheiding en partner event buses voor SaaS-integraties; maak rules aan met patterns (

undefined

) en koppel targets met een dead-letter- en retry-configuratie (de targets JSON ondersteunt DeadLetterConfig en RetryPolicy). Gebruik de schema registry om de structuur van events te ontdekken en af te dwingen; registreer schema’s wanneer producers goed gedefinieerd zijn, en gebruik Code Bindings om waar nuttig getypeerde modellen te genereren.

Kies EventBridge wanneer je het volgende nodig hebt:

Kies direct voor SNS/SQS wanneer je eenvoudigere fan-out of gegarandeerde queue-semantiek nodig hebt:

Messaging met SNS en SQS (DLQ’s, visibility timeout)

SNS is een pub/sub push-service; SQS is een duurzame queue met pull-semantiek. Voor zeer betrouwbare verwerking, geef de voorkeur aan SNS -> SQS -> Lambda-patronen om de opname (ingestion) los te koppelen van de verwerking en controle te krijgen over retries en visibility. Configureer het SQS redrive-beleid (

undefined

) om berichten naar een DLQ te verplaatsen na maxReceiveCount, en zorg ervoor dat de visibility timeout lang genoeg is om voortijdige herlevering te voorkomen (aanbevolen: visibility >= function timeout * 2). Voor FIFO-behoeften, gebruik SQS FIFO of SNS FIFO met message group ID’s om de volgorde te bewaren en deduplication ID’s om duplicaten te voorkomen.

Opties voor de afhandeling van dead-letters en waar ze te gebruiken:

Idempotentie is essentieel: implementeer idempotente handlers met behulp van conditionele schrijfacties in DynamoDB (PutItem met ConditionExpression attribute_not_exists(pk)), idempotency-tokens die met een TTL worden opgeslagen, of SQS FIFO-deduplicatie voor exactly-once semantiek.

Functiepermissies, rollen en least privilege

Pas het principe van least privilege toe op Lambda execution roles en resource-beleid van functies. Begin met AWSLambdaBasicExecutionRole voor CloudWatch Logs, en ken vervolgens expliciete resource-ARN’s toe voor services (bijv. dynamodb:PutItem op arn:aws:dynamodb:region:acct:table/MyTable). Vermijd wildcards zoals Resource: “*” wanneer specifieke ARN’s mogelijk zijn. Gebruik managed of custom policies die gespecificeerd zijn per actie en resource, en voeg conditions (aws:SourceAccount, aws:SourceArn) toe bij het toevoegen van invoke-permissies voor services:

undefined

Beslissingscriteria:

Observeerbaarheid en troubleshooting voor serverless

Observeerbaarheid moet metrics, logs, traces en de status van asynchrone levering omvatten. Belangrijke CloudWatch-metrics: Invocations, Duration, Errors, Throttles, ConcurrentExecutions, IteratorAge (voor stream- en SQS-triggers). Voor inzicht in asynchrone fouten, monitor de “AsyncEventInvoke”-metrics en stel CloudWatch Alarms in op DeadLetterErrors en Throttles. Activeer X-Ray tracing (aws lambda update-function-configuration –function-name MyFn –tracing-config Mode=Active) om end-to-end traces over services heen te krijgen en cold-starts, downstream latencies en exceptions te visualiseren.

Gebruik gestructureerde JSON-logs en CloudWatch Logs Insights-query’s om snel foutpatronen te vinden; instrumenteer idempotency-controles en leg correlation ID’s vast in de logs. Voor distributed tracing, propageer trace ID’s expliciet in event payloads voor EventBridge/SNS-flows als de automatische context verloren gaat. Voor SQS event-source mappings, monitor ApproximateAgeOfOldestMessage en stel alarmen in als deze waarde groeit, wat duidt op tegendruk (backpressure) of throttling. Vang de Lambda Throttles-metric af en alarmeer hierop, en volg de afwegingen tussen het gebruik en de kosten van provisioned concurrency.

Veelvoorkomende valkuilen en beslissingscriteria

Praktijkprobleem: Use-Case Scenario

AcmePayments ontvangt een hoog volume aan betalingsevents via EventBridge en ervaart periodiek Lambda-throttling en dubbele verwerking tijdens piekuren. Ze hebben betrouwbare verwerking nodig, geen dataverlies en een begrensde downstream-belasting op DynamoDB.

  1. Maak een EventBridge custom bus en een rule aan die overeenkomt met betalingsevents; voeg een SQS FIFO-queue toe als een duurzaam target met DeadLetterConfig en RetryPolicy in de target-configuratie.
  2. Configureer Lambda om de SQS-queue te pollen (event source mapping) met een batch size die is afgestemd op de downstream-capaciteit en een visibility timeout die is ingesteld op >= function timeout * 2.
  3. Reserveer concurrency voor de Lambda (aws lambda put-function-concurrency …) om pieken in schrijfacties naar DynamoDB te beperken; implementeer provisioned concurrency voor een kleine pool als lage latency vereist is.
  4. Implementeer idempotency met behulp van DynamoDB conditional writes, met de payment-id als key, en sla idempotency-records op met een TTL om ze op te ruimen.
  5. Activeer X-Ray tracing en gestructureerde logs met een correlation ID in het event om de verwerking te traceren; stel CloudWatch-alarmen in op ApproximateAgeOfOldestMessage, Throttles en DLQ-metrics.

Rationale: Het ontkoppelen van EventBridge naar SQS zorgt voor duurzame buffering en retry-semantiek; reserved concurrency beschermt de downstream DynamoDB tegen pieken, idempotency voorkomt duplicaten, en tracing/alarmen bieden operationeel inzicht in faalscenario’s.


Databases en Caching · Alle domeinen · Kostenbeheer en Resource Tagging

Oefen deze vragen → · Getimede oefening op ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Slaag voor je examen →

Blader door Amazon →

Related guides

Alles-in-één toegang

Eén abonnement. Elk examen.

Elk plan ontgrendelt onbeperkt zoeken naar antwoorden, oefentests, AI-uitleg en de volledige bronnenbibliotheek — in meer dan 20 talen.

Maandelijks
24.87
Just €0.83/day
Alles inbegrepen:
  • Onbeperkt zoeken naar antwoorden
  • Onbeperkte oefentests
  • AI-gestuurde uitleg
  • Volledige bronnenbibliotheek
  • 20+ talen
  • Wekelijkse contentupdates
  • Beloningen & verwijzingen
  • Prioriteitsondersteuning
Start gratis proefperiode

Geen creditcard vereist*

Beste waarde
12 maanden
179.87
Just €0.49/daySave 40%
Alles inbegrepen:
  • Onbeperkt zoeken naar antwoorden
  • Onbeperkte oefentests
  • AI-gestuurde uitleg
  • Volledige bronnenbibliotheek
  • 20+ talen
  • Wekelijkse contentupdates
  • Beloningen & verwijzingen
  • Prioriteitsondersteuning
Start gratis proefperiode

Geen creditcard vereist*

✓ Gratis plan inbegrepen · ✓ Annuleer op elk moment · ✓ Alle plannen ontgrendelen het volledige product