Lambda-runtime en handler
Ontdek verschillende Lambda-runtimes en begrijp hoe de handlerfunctie events verwerkt en responses retourneert.
Lambda-runtime en handler is een gratis Serverloze backend met AWS Lambda en API Gateway-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Serverloze backend met AWS Lambda en API Gateway. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Serverloze backend met AWS Lambda en API Gateway bevat in totaal 4 lessen.
De uitvoeringsomgeving van je Lambda
Wanneer je code op AWS Lambda wordt uitgevoerd, heeft deze een omgeving nodig. Die heet een runtime.
Je kunt de runtime zien als het specifieke besturingssysteem, de versie van de programmeertaal en de benodigde bibliotheken die je Lambda-functie hosten en uitvoeren.
Wat biedt een runtime?
Een Lambda-runtime biedt alles wat je code nodig heeft om te worden uitgevoerd.
- Ondersteuning voor talen: De runtime bevat de interpreter of virtuele machine voor de door jou gekozen taal (bijvoorbeeld Python, Node.js of Java).
- Besturingssysteem: De runtime werkt op een veilig, beheerd besturingssysteem (meestal een variant van Linux).
- AWS SDK: De runtime bevat vooraf de AWS SDK voor die taal, zodat je eenvoudig met andere AWS-services kunt communiceren.
Veelgebruikte keuzes voor je code
AWS Lambda ondersteunt veel populaire programmeertalen als runtimes. Je kiest de taal die het beste past bij je project en de vaardigheden van je team.
- Python: Wordt vaak gekozen vanwege de eenvoud en gegevensverwerking.
- Node.js: Geschikt voor gebeurtenisgestuurde, niet-blokkerende applicaties.
- Java: Heeft de voorkeur voor grootschalige bedrijfsapplicaties.
- Go: Staat bekend om hoge prestaties en gelijktijdigheid.
- .NET en Ruby: Ook beschikbaar voor specifieke gebruikssituaties.
Waarom de keuze van de runtime belangrijk is
De juiste runtime kiezen is belangrijk. Deze keuze kan invloed hebben op:
- Prestaties: Sommige runtimes starten sneller (minder tijd voor een "cold start") of worden efficiënter uitgevoerd.
- Ervaring van ontwikkelaars: Vertrouwdheid van je team met een taal versnelt de ontwikkeling.
- Ecosysteem: Toegang tot specifieke bibliotheken en frameworks.
- Kosten: Hoewel het effect klein is, kan de uitvoeringsduur de facturering beïnvloeden.
Het startpunt van je code: de handler
De handlerfunctie is het specifieke stuk code in je Lambda-functie dat AWS Lambda aanroept wanneer je functie wordt aangeroepen.
Deze lijkt op de main-methode in een traditioneel programma, maar is specifiek ontworpen om gebeurtenissen van AWS-services te ontvangen en te verwerken.
De opbouw van een Python-handler
Een gebruikelijke handlerfunctie in Python ziet er zo uit. De functie neemt twee argumenten:
event: Een woordenboek met gegevens over de gebeurtenis die je functie heeft geactiveerd.context: Een object met runtime-informatie over de aanroep, de functie en de uitvoeringsomgeving.
def my_handler(event, context):
# Your code goes here
passJe eerste handler-voorbeeld
We bekijken een eenvoudige Python-handler. Deze print de binnenkomende gebeurtenis en enkele contextgegevens en retourneert vervolgens een eenvoudige respons. Deze functie is een compleet programma.
import json
def lambda_handler(event, context):
print("Received event:")
print(json.dumps(event, indent=2))
print("Function Name:", context.function_name)
print("Memory Limit:", context.memory_limit_in_mb)
response = {
"statusCode": 200,
"body": json.dumps("Hello from Lambda!")
}
return responseVan gebeurtenis naar uitvoering
Wanneer een AWS-service (zoals API Gateway of S3) je Lambda activeert, stuurt de service een gebeurtenis.
De Lambda-service doet vervolgens het volgende:
- Start een runtime-omgeving (als deze nog niet actief is).
- Laadt je code.
- Roept je handlerfunctie aan en geeft de objecten voor de gebeurtenis en context mee.
Een respons terugsturen
Nadat je handler de gebeurtenis heeft verwerkt, retourneert deze een respons. Dit is vaak een JSON-object.
De structuur van de respons kan variëren afhankelijk van de manier waarop je Lambda is aangeroepen. Voor HTTP-verzoeken (bijvoorbeeld vanuit API Gateway) wordt een specifieke JSON-structuur met statusCode en body verwacht.
Kennis over de handlerhandtekening
Bekijk een typische Python-Lambda-handlerfunctie. Welke van de volgende beschrijvingen geeft het doel van de twee belangrijkste parameters het beste weer?
Samenvatting: runtimes en handlers
In deze les heb je de fundamentele onderdelen van een AWS Lambda-functie geleerd:
- Runtimes: De uitvoeringsomgeving voor je code, met ondersteuning voor de taal en de benodigde bibliotheken.
- Handlers: De specifieke functie in je code die AWS Lambda aanroept en die gebeurtenisgegevens en contextinformatie ontvangt.
Deze concepten begrijpen is cruciaal voor het bouwen van robuuste serverloze applicaties!
Leer Serverloze backend met AWS Lambda en API Gateway met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Lambda-runtime en handler” gratis?
Ja — de volledige tekst van “Lambda-runtime en handler” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Serverloze backend met AWS Lambda en API Gateway wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Serverloze backend met AWS Lambda en API Gateway bevat in totaal 4 lessen.
Wat leer ik in “Lambda-runtime en handler”?
Ontdek verschillende Lambda-runtimes en begrijp hoe de handlerfunctie events verwerkt en responses retourneert. Je oefent met Serverloze backend met AWS Lambda en API Gateway door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Serverloze backend met AWS Lambda en API Gateway te beginnen?
Ervaring vooraf is niet nodig. Serverloze backend met AWS Lambda en API Gateway op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Lambda-runtime en handler”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Serverloze backend met AWS Lambda en API Gateway?
Ja. Elke les over Serverloze backend met AWS Lambda en API Gateway bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Lambda-runtime en handler
- Omgevingsvariabelen en lagen
- Logboekregistratie en monitoring met CloudWatch
- Foutafhandeling, retries en dead-letter queues