Serverløs backend med AWS Lambda og API Gateway · Lektion

Introduktion til AWS SAM

Opdag fordelene ved AWS SAM til definition af serverless-ressourcer og forenkling af implementeringer sammenlignet med rå CloudFormation.

Lektion 1 af 411 trin

Introduktion til AWS SAM er en gratis Serverløs backend med AWS Lambda og API Gateway-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Serverløs backend med AWS Lambda og API Gateway, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Serverløs backend med AWS Lambda og API Gateway-kurset indeholder 4 lektioner i alt.

Velkommen til AWS SAM!

Hej! I dag undersøger vi AWS SAM, Serverless Application Model. Det er et open source-framework, der er udviklet til at hjælpe dig med at bygge serverløse applikationer på AWS mere effektivt.

Tænk på SAM som en effektiv udvidelse af AWS CloudFormation, der er målrettet serverløse ressourcer.

CloudFormations omstændelige syntaks

AWS CloudFormation er en robust tjeneste til at definere infrastruktur som kode. Det kan dog være ret omstændeligt at bygge serverløse applikationer direkte med CloudFormation.

  • En simpel AWS Lambda-funktion kræver ofte, at du definerer selve Lambda-ressourcen, en IAM-rolle med tilladelser og muligvis et API Gateway-slutpunkt.
  • Det kan føre til mange konfigurationslinjer selv i helt grundlæggende opsætninger.

SAM til undsætning

AWS SAM har til formål at forenkle denne kompleksitet. Tjenesten indeholder en forkortet syntaks til definition af almindelige serverløse ressourcer.

I stedet for at definere flere CloudFormation-ressourcer for én serverløs komponent kan du med SAM definere den med blot én forenklet ressourcetype.

Vigtige fordele ved at bruge SAM

Brug af AWS SAM giver flere fordele i din arbejdsgang til udvikling af serverløse applikationer:

  • Mindre standardkode: Definer serverløse funktioner, API'er og databaser med færre kodelinjer.
  • Lokal test: Test dine Lambda-funktioner og API Gateway lokalt, før du implementerer dem i AWS.
  • Forenklede implementeringer: SAM CLI håndterer pakning, upload og implementering af din applikation problemfrit.
  • CloudFormation-kraft: SAM er bygget oven på CloudFormation, så du får stadig dets stabilitet og funktioner.

Grundlæggende om SAM-skabeloner

Infrastrukturen i din serverløse applikation er defineret i en SAM-skabelon, som typisk er en YAML- eller JSON-fil. Den vigtigste del, der fortæller CloudFormation, at SAM's forenklede syntaks skal bruges, er sektionen Transform.

Denne Transform-linje instruerer CloudFormation i at udvide SAM's forkortede syntaks til komplette CloudFormation-ressourcer før implementeringen.

Din første SAM-skabelon

Lad os se på en helt grundlæggende SAM-skabelon. Denne YAML-fil definerer en simpel Lambda-funktion, der viser "Hello World". Bemærk, hvor kort den er sammenlignet med det, som rå CloudFormation ville kræve til den samme opsætning!

AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: A simple 'Hello World' SAM app.

Resources:
  HelloWorldFunction:
    Type: AWS::Serverless::Function
    Properties:
      Handler: app.lambda_handler
      Runtime: python3.9
      CodeUri: ./
      MemorySize: 128
      Timeout: 30

Gennemgang af skabelonen

Lad os gennemgå skabelonen:

  • Transform: AWS::Serverless-2016-10-31: Dette fortæller CloudFormation, at den SAM-specifikke syntaks skal behandles.
  • Type: AWS::Serverless::Function: Dette er en SAM-ressourcetype. Den opretter automatisk Lambda-funktionen, en IAM-udførelsesrolle og de nødvendige tilladelser.
  • Handler, Runtime, CodeUri: Dette er standardegenskaber for AWS Lambda, som angiver, hvor din kode er, hvilket sprog den bruger, og hvad indgangspunktet er.

SAM CLI – din serverløse hjælper

Mens SAM-skabeloner definerer dine ressourcer, er SAM Command Line Interface (CLI) dit primære værktøj til at arbejde med din serverløse applikation.

SAM CLI giver dig mulighed for at:

  • Bygge din applikation (f.eks. pakke afhængigheder).
  • Teste dine Lambda-funktioner lokalt.
  • Implementere din applikation i AWS.

SAM-arbejdsgangen (overordnet)

En typisk SAM-arbejdsgang til udvikling består af disse overordnede trin:

  1. Skriv koden til din Lambda-funktion (f.eks. Python eller Node.js).
  2. Definer din applikations ressourcer i en SAM-skabelon (YAML/JSON).
  3. Brug sam build til at forberede din applikation til implementering.
  4. Brug sam deploy til at sende din applikation til AWS.

SAM CLI håndterer al den underliggende CloudFormation-magi!

Hurtig kontrol af SAM

Hvad er det primære formål med AWS SAM ud fra det, vi har lært?

Opsummering og næste trin

Du er netop blevet introduceret til AWS SAM! Vi lærte, at SAM forenkler udvikling af serverløse applikationer ved at give dig en kortfattet måde at definere ressourcer på oven på CloudFormation.

Du så også en grundlæggende SAM-skabelon og lærte om det effektive SAM CLI.

Derefter går vi i dybden med at definere forskellige serverløse ressourcer i dine SAM-skabeloner, herunder funktioner, API'er og databaser!

Gratis at komme i gang

Lær Serverløs backend med AWS Lambda og API Gateway med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Introduktion til AWS SAM” gratis?

Ja — hele teksten til “Introduktion til AWS SAM” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Serverløs backend med AWS Lambda og API Gateway-kurset, skal du opgradere til CoddyKit PRO. Serverløs backend med AWS Lambda og API Gateway-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Introduktion til AWS SAM”?

Opdag fordelene ved AWS SAM til definition af serverless-ressourcer og forenkling af implementeringer sammenlignet med rå CloudFormation. Du øver dig i Serverløs backend med AWS Lambda og API Gateway med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Serverløs backend med AWS Lambda og API Gateway?

Der kræves ingen tidligere erfaring. Serverløs backend med AWS Lambda og API Gateway på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Introduktion til AWS SAM”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Serverløs backend med AWS Lambda og API Gateway-lektion?

Ja. Alle Serverløs backend med AWS Lambda og API Gateway-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Introduktion til AWS SAM
  2. Definition af serverless-ressourcer
  3. Implementering af SAM-applikationer
  4. Lokal test og fejlfinding med SAM CLI
← Tilbage til Serverløs backend med AWS Lambda og API Gateway