En introduktion til AWS Lambda for begyndere

Lad os lære det grundlæggende i AWS Lambda, og hvordan man kører en funktion trin for trin.

Introduktion

Når du bygger applikationer, ønsker du, at de skal levere en fremragende brugeroplevelse. For at få magien til at ske, skal din applikation have en backend-kode, der kører som reaktion på hændelser.

Men at administrere infrastrukturen til at hoste og udføre backend-kode kræver, at du størrelse, leverer og skalerer en masse servere, administrerer operativsystemopdateringer, anvender sikkerhedsrettelser og derefter overvåger al denne infrastruktur for ydeevne og tilgængelighed.

Ville det ikke være rart, hvis du kunne fokusere på at bygge fantastiske applikationer uden at skulle bekymre dig om deres infrastruktur? Det er her AWS Lambda kommer ind i billedet.

Hvad er AWS Lambda?

AWS Lambda er en serverløs computertjeneste, der lader dig køre din kode uden at bekymre dig om at klargøre eller administrere nogen server. Du kan køre din applikation eller backend-tjeneste ved hjælp af AWS Lambda uden administration. Du skal bare uploade din kode på Lambda, og den vil køre din kode, endda skalere infrastrukturen med høj tilgængelighed.

Den kode du kører på AWS Lambda kaldes en lambda funktion. I øjeblikket understøtter den følgende programmeringssprog:

  • Java
  • Python
  • C#
  • Node.js
  • PowerShell
  • Rubin

Det giver også en runtime API, der kan bruges til at køre funktioner skrevet på andre (native) programmeringssprog.

  Sådan får du Backspace-genvejen til at fungere igen i Chrome

For at arbejde med AWS Lambda er der kun én forudsætning; du bør have en konto på AWS, hvorfra du kan få adgang til AWS-administrationskonsollen.

Du kan ringe til Lambda is FaaS (Function-as-a-Service) af AWS.

AWS Lambda funktioner

Nedenfor er nogle af de vigtige funktioner, der tilbydes af AWS Lambda:

  • AWS Lambda skalerer nemt infrastrukturen uden yderligere konfiguration. Det reducerer det involverede operationelle arbejde.
  • Det tilbyder flere muligheder som AWS S3, CloudWatch, DynamoDB, API Gateway, Kinesis, CodeCommit og mange flere for at udløse en begivenhed.
  • Du behøver ikke at investere på forhånd. Du betaler kun for den hukommelse, der bruges af lambda-funktionen og minimale omkostninger på antallet af forespørgsler og dermed omkostningseffektivt.
  • AWS Lambda er sikker. Den bruger AWS IAM til at definere alle roller og sikkerhedspolitikker.
  • Det giver fejltolerance for både tjenester, der kører koden og funktionen. Du behøver ikke bekymre dig om, at ansøgningen er nede.

AWS Lambda Priser

AWS Lambda-priser afhænger af varigheden og den hukommelse, der bruges af lambdafunktionen skrevet af dig. Det maksimale du kan tildele er 3008 MB hukommelse til en lambda-funktion i intervaller på 64 MB. Nedenfor er en pristabel med alle hukommelsespladerne i 100 millisekunder.

Hvordan fungerer AWS Lambda?

  • Først opretter du en funktion og tilføjer grundlæggende information til den, som det programmeringssprog, der skal bruges i funktionen.
  • Så skriver du din kode på lambda-editoren eller uploader den i et understøttet programmeringssprog i en zip-fil.
  • Når lambdakoden er uploadet, håndterer tjenesten al kapacitetsskalering, patching og administration af infrastrukturen.
  • For at køre koden skal du udløse lambda-funktionen med en ekstern AWS-tjeneste, som kan påkalde lambda-funktionen. Det kan for eksempel være en S3 spand.
  • Inden for få sekunder vil lambda være klar til at udløse din funktion automatisk, når en hændelse opstår. AWS Lambda kører din kode, når triggerhændelsen kaldes. Den sørger for at administrere og overvåge serverne for dig.
  • Hvis din funktion kræver meget processorkraft, vil den vælge en instanstype, der har mere processorkraft og RAM, eller hvis din lambdakode kun kører i to sekunder, vil den vælge den lavest mulige instans, hvilket sparer dine penge og tid .
  Hvorfor står min e-mail i kø?

Så det er sådan AWS Lambda fungerer internt. Lad mig vise dig en demo på AWS Lambda.

Oprettelse af AWS Lambda-funktion

Jeg vil lave et meget simpelt spil ved hjælp af lambda-funktionen i Node.js til denne artikel. Jeg vil oprette en lambda-funktion til at kaste en terning, generere et tal tilfældigt mellem 1 og 6 og udskrive det.

  • Gå til AWS-administrationskonsollen, og skriv Lambda i søgefeltet, klik på Lambda.

  • Funktionsvindue vises, klik på Opret funktion.

  • Du får forskellige muligheder for at oprette en funktion med deres forklaring. Da jeg opretter det fra bunden, vil jeg vælge Forfatter fra bunden.

  • Derefter skal du udfylde nogle nødvendige oplysninger til denne lambda-funktion. Indtast funktionsnavnet og vælg den Node.js-version, som du vil bruge til denne funktion.
  • Du skal også vælge en eksekveringsrolle. Da jeg ikke har nogen eksisterende rolle defineret på min AWS-konto, vil jeg gå videre og vælge oprette en ny rolleindstilling. Klik på Opret funktion.
  Sådan tilføjer du midler til Metamask

  • Du vil få en succesbesked om, at unction blev oprettet. Klik på Designer-vinduet for at minimere det.

  • Det næste vil være vinduet Funktionskode.
  • Indsæt koden nævnt nedenfor i editoren. Du kan også uploade koden ved hjælp af zip-filen, men jeg bruger den interne AWS-kodeeditor.

  • Det er en simpel kode, som kun tager tal fra 1 til 6 og bruger en tilfældig matematisk funktion til at generere et tal tilfældigt og udskrive det, når funktionen kaldes.
exports.handler = async (event) => {
const min = 1;
const max = 6;
const randomNum = Math.floor(Math.random() * (max - min + 1)) + min;
const out="Dice throw result is: " + randomNum;
return out;
};
  • Klik nu på knappen Test i øverste højre hjørne. Du får en pop op for at konfigurere en testhændelse, indtaste et hændelsesnavn og klikke på konfigurer.

  • Klik nu på Gem og derefter Test.

I udførelsesresultatet vil du se output fra den funktionslogik, vi lige har skrevet. Den udskrives – Resultatet af terningkast er 2.

  • Rul op og klik på detaljerede udførelsesresultater for at få den komplette oversigt over denne lambda-funktion med det forventede output. Detaljer såsom anmodnings-id, varighed, faktureret varighed, konfigurerede ressourcer osv. med logoutput er også tilgængelige.

  • Klik på overvågningsfanen for at visualisere cloud watch-logfilerne og lambdafunktionens ydeevne over en defineret tid.

  • Hvis du kommer ind i logfilerne, som blev oprettet af CloudWatch, kan du se detaljerne om, hvad der skete, da lambda-funktionen kørte, som blev overvåget af CloudWatch.

Konklusion

Kom godt i gang med Lambda er virkelig nemt. Hvis din virksomhedsapplikation kræver at køre backend-kode, kan du overveje at bruge en serverløs platform som AWS Lambda.

Nydt at læse artiklen? Hvad med at dele med verden?