Serverloze backend met AWS Lambda en API Gateway · Les

SAM-applicaties implementeren

Gebruik de SAM CLI om uw serverless applicaties te bouwen, lokaal te testen en naar AWS te implementeren, en beheer daarbij verschillende omgevingen.

Les 3 van 411 stappen

SAM-applicaties implementeren is een gratis Serverloze backend met AWS Lambda en API Gateway-les op CoddyKit. Dit is les 3 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.

Inleiding tot de SAM CLI

Welkom bij het implementeren van SAM-applicaties! De AWS Serverless Application Model Command Line Interface (SAM CLI) is je beste hulpmiddel voor het bouwen en beheren van serverless-projecten.

De SAM CLI breidt AWS CloudFormation uit om het definiëren van serverless-resources eenvoudiger te maken. De SAM CLI biedt opdrachten voor het bouwen, testen en implementeren van je serverless-applicaties.

Je applicatie bouwen

Voordat je je SAM-applicatie implementeert, moet je deze bouwen. Met de opdracht sam build verwerk je de code en afhankelijkheden van je applicatie en bereid je ze voor op implementatie.

  • De opdracht verpakt afhankelijkheden (bijvoorbeeld Python-bibliotheken).
  • De opdracht transpileert code indien nodig (bijvoorbeeld TypeScript naar JavaScript).
  • De opdracht maakt een implementeerbaar artefact aan in de map .aws-sam/build.

Voorbeeld van een Lambda-functie

We bekijken een eenvoudige Python-Lambda-functie en het bijbehorende template.yaml. Met de opdracht sam build wordt dit verwerkt om implementeerbare code te maken.

Na het uitvoeren van sam build is de verpakte code klaar om lokaal te worden getest of geïmplementeerd.

import json

def lambda_handler(event, context):
    """
    A simple Lambda handler.
    """
    return {
        "statusCode": 200,
        "headers": {
            "Content-Type": "application/json"
        },
        "body": json.dumps({
            "message": "Hello from your SAM Lambda!"
        })
    }

Lokaal testen met `sam local invoke`

Met de SAM CLI kun je je Lambda-functies lokaal testen zonder ze naar AWS te implementeren. Dat bespaart tijd en kosten. Gebruik sam local invoke om een Lambda-aanroep te simuleren.

Je kunt gebeurtenisgegevens rechtstreeks aan je functie doorgeven, net zoals AWS-services, zoals API Gateway of S3, dat zouden doen wanneer ze de functie activeren.

Een Lambda-functie lokaal uitvoeren

Om de Lambda-functie uit de vorige scène te testen, gebruik je sam local invoke met de logische ID van je functie en een gebeurtenisbestand.

Met bijvoorbeeld sam local invoke MyHelloWorldFunction --event event.json test je een functie met de naam 'MyHelloWorldFunction' met behulp van de gegevens in event.json.

{
  "httpMethod": "GET",
  "path": "/hello",
  "queryStringParameters": null,
  "headers": {
    "Accept": "*/*"
  },
  "body": null
}

Een API lokaal testen met `sam local start-api`

Als je SAM-applicatie een API Gateway bevat, kun je de volledige API lokaal simuleren met sam local start-api. Deze opdracht start een lokale webserver die API Gateway nabootst.

Je kunt vervolgens HTTP-aanvragen sturen naar http://127.0.0.1:3000 en je API-eindpunten lokaal van begin tot eind testen.

Voorbereiden op implementatie: `sam deploy`

Zodra je applicatie is gebouwd en lokaal is getest, kun je deze naar AWS implementeren. Hiervoor gebruik je de opdracht sam deploy.

De opdracht verpakt de artefacten van je applicatie, uploadt ze naar een S3-bucket en gebruikt vervolgens AWS CloudFormation om je serverless-resources te implementeren.

Je eerste begeleide implementatie

Voor je eerste implementatie wordt het sterk aanbevolen om de vlag --guided te gebruiken. Deze leidt je interactief door het instellen van de benodigde parameters.

  • Stacknaam: Een unieke identificatie voor je CloudFormation-stack.
  • AWS-regio: De locatie waar je resources worden geïmplementeerd.
  • S3-bucket: Voor het opslaan van implementatieartefacten.
  • Mogelijkheden: Bevestiging dat IAM-resources mogen worden aangemaakt.

Voorbeeld: sam deploy --guided

Meerdere omgevingen beheren

In realistische situaties heb je vaak ontwikkel-, acceptatie- en productieomgevingen. De SAM CLI helpt je deze te beheren door verschillende stacknamen en parameters te laten opgeven.

  • Gebruik verschillende stacknamen (bijvoorbeeld my-app-dev en my-app-prod).
  • Gebruik --parameter-overrides om verschillende waarden door te geven voor omgevingsspecifieke configuraties (bijvoorbeeld databasenamen en API-sleutels).

Korte controle

Welke opdracht van de SAM CLI gebruik je om je API Gateway-eindpunten lokaal te testen?

Samenvatting en volgende stappen

Gefeliciteerd! Je hebt de belangrijkste stappen geleerd voor het bouwen, testen en implementeren van serverless-applicaties met de SAM CLI.

  • sam build: Verpakt en bereidt je applicatie voor.
  • sam local invoke: Test afzonderlijke Lambda-functies lokaal.
  • sam local start-api: Simuleert API Gateway voor lokaal testen van API's.
  • sam deploy: Implementeert je applicatie met AWS CloudFormation.

Deze opdrachten beheersen is belangrijk voor efficiënte serverless-ontwikkeling!

Gratis beginnen

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 “SAM-applicaties implementeren” gratis?

Ja — de volledige tekst van “SAM-applicaties implementeren” 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 “SAM-applicaties implementeren”?

Gebruik de SAM CLI om uw serverless applicaties te bouwen, lokaal te testen en naar AWS te implementeren, en beheer daarbij verschillende omgevingen. 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 3 van 4.

Hoe lang duurt de les “SAM-applicaties implementeren”?

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

  1. Inleiding tot AWS SAM
  2. Serverless resources definiëren
  3. SAM-applicaties implementeren
  4. Lokaal testen en debuggen met SAM CLI
← Terug naar Serverloze backend met AWS Lambda en API Gateway