Bootcamp backendontwikkeling met Node.js · Les

Inleiding tot serverless met Node.js

Begrijp serverless computing, de voordelen ervan en hoe u Node.js-functies implementeert op platforms zoals AWS Lambda.

Les 1 van 411 stappen

Inleiding tot serverless met Node.js is een gratis Bootcamp backendontwikkeling met Node.js-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 Bootcamp backendontwikkeling met Node.js. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Bootcamp backendontwikkeling met Node.js bevat in totaal 4 lessen.

Wat is serverless computing?

Welkom in de wereld van serverless computing! Dit betekent niet dat je code zonder servers uitvoert, maar dat je de servers niet zelf beheert.

In een serverloze architectuur neemt een cloudprovider, zoals AWS, Azure of Google Cloud, al het serverbeheer, de schaalbaarheid en de infrastructuur voor zijn rekening. Jij richt je alleen op het schrijven van je code.

Inleiding tot serverless met Node.js — illustratie 1

Function as a Service (FaaS)

De kern van serverless is vaak Function as a Service (FaaS). Je implementeert afzonderlijke functies en geen volledige applicaties.

  • Gebeurtenisgestuurd: Functies worden alleen uitgevoerd wanneer ze door een gebeurtenis worden geactiveerd, bijvoorbeeld een HTTP-verzoek, het uploaden van een bestand of een wijziging in een database.
  • Stateless: Elke uitvoering staat op zichzelf; functies bewaren geen status tussen aanroepen.
  • Ephemeral: Functies bestaan alleen zolang ze worden uitgevoerd en worden daarna afgesloten.

Waarom serverless? Belangrijkste voordelen

Serverless biedt voor veel applicaties aantrekkelijke voordelen:

  • Minder operationele overhead: Je hoeft geen servers in te richten, van patches te voorzien of te schalen.
  • Automatische schaalbaarheid: Je functies schalen automatisch op of af op basis van de vraag.
  • Kostenefficiëntie: Je betaalt alleen voor de computertijd waarin je code daadwerkelijk wordt uitgevoerd, vaak gemeten in milliseconden.
  • Snellere ontwikkeling: Richt je op bedrijfslogica en niet op infrastructuur.

Node.js: ideaal voor serverless

Node.js is bijzonder populair voor serverless functies, en daar is een goede reden voor!

Het gebeurtenisgestuurde, niet-blokkerende I/O-model sluit perfect aan bij het vluchtige, gebeurtenisgestuurde karakter van serverless functies. Node.js-functies hebben doorgaans ook zeer korte 'cold start'-tijden, wat betekent dat ze snel klaar zijn voor uitvoering.

Kennismaken met AWS Lambda

AWS Lambda is het toonaangevende FaaS-aanbod van Amazon Web Services en een van de meest gebruikte serverless-platforms.

Met Lambda kun je code uitvoeren zonder servers in te richten of te beheren. Je uploadt je code en Lambda regelt alles wat nodig is om deze met hoge beschikbaarheid uit te voeren en te schalen.

Anatomie van een Lambda-functie

Een Node.js Lambda-functie exporteert meestal één handlerfunctie. Deze functie ontvangt twee belangrijkste argumenten:

  • event: Een object met gegevens over de gebeurtenis die de functie heeft geactiveerd.
  • context: Een object met runtime-informatie over de aanroep, de functie en de uitvoeringsomgeving.

De functie kan async zijn of een Promise retourneren voor asynchrone bewerkingen.

Je eerste Lambda-functie

Laten we een eenvoudige "Hello World"-Lambda-functie in Node.js bekijken. Deze functie reageert met een begroeting.

Let op statusCode en body; deze komen vaak voor in HTTP-antwoorden via Lambda.

exports.handler = async (event) => {
  const response = {
    statusCode: 200,
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ message: 'Hello from CoddyKit Lambda!' }),
  };
  return response;
};

Het event-object begrijpen

Het object event is essentieel omdat het alle invoergegevens voor je functie bevat. De structuur ervan verschilt afhankelijk van de trigger.

Als de functie door een API Gateway wordt geactiveerd, kan het object het volgende bevatten:

  • httpMethod (bijv. 'GET', 'POST')
  • path (bijv. '/hello')
  • queryStringParameters
  • body (voor POST-verzoeken)

Veelgebruikte Lambda-triggers

Lambda-functies kunnen worden aangeroepen door een groot aantal AWS-services. Dit zijn enkele veelgebruikte triggers:

  • API Gateway: Voor het bouwen van RESTful API's.
  • S3 (Simple Storage Service): Wanneer objecten in een bucket worden gemaakt of verwijderd.
  • DynamoDB Streams: Wanneer items in een DynamoDB-tabel worden gewijzigd.
  • SNS (Simple Notification Service): Voor meldingen en berichten naar meerdere ontvangers.
  • CloudWatch Events/EventBridge: Voor geplande taken of het reageren op gebeurtenissen van AWS-services.

Kennistoets over serverloze architectuur

Test je kennis van serverloos computergebruik!

Samenvatting: Introductie tot serverloze architectuur

Goed gedaan! Je hebt je eerste stappen gezet in serverloos computergebruik.

  • We hebben serverless gedefinieerd als het richten op code in plaats van op serverbeheer.
  • Je hebt kennisgemaakt met FaaS (Function as a Service) als het kernconcept.
  • We hebben voordelen onderzocht, zoals kostenefficiëntie en automatische schaalbaarheid.
  • Je begrijpt waarom Node.js zeer geschikt is voor serverloze architecturen.
  • Je hebt kennisgemaakt met AWS Lambda en de basisstructuur van een functie.

Vervolgens gaan we dieper in op ontwerpprincipes voor GraphQL-API's!

Gratis beginnen

Leer JavaScript 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
22
Lessen
92

Veelgestelde vragen

Is de les “Inleiding tot serverless met Node.js” gratis?

Ja — de volledige tekst van “Inleiding tot serverless met Node.js” 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 Bootcamp backendontwikkeling met Node.js wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Bootcamp backendontwikkeling met Node.js bevat in totaal 4 lessen.

Wat leer ik in “Inleiding tot serverless met Node.js”?

Begrijp serverless computing, de voordelen ervan en hoe u Node.js-functies implementeert op platforms zoals AWS Lambda. Je oefent met Bootcamp backendontwikkeling met Node.js 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 Bootcamp backendontwikkeling met Node.js te beginnen?

Ervaring vooraf is niet nodig. Bootcamp backendontwikkeling met Node.js 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 “Inleiding tot serverless met Node.js”?

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 Bootcamp backendontwikkeling met Node.js?

Ja. Elke les over Bootcamp backendontwikkeling met Node.js 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

  1. Inleiding tot serverless met Node.js
  2. Ontwerpprincipes voor GraphQL-API's
  3. Een GraphQL-server bouwen met Apollo
  4. GraphQL-subscriptions voor realtimegegevens
← Terug naar Bootcamp backendontwikkeling met Node.js