En introduktion till AWS Lambda för nybörjare

Låt oss lära oss grunderna i AWS Lambda och hur man kör en funktion steg för steg.

Introduktion

När du bygger applikationer vill du att de ska ge en utmärkt användarupplevelse. För att få magin att hända behöver din applikation en backend-kod som körs som svar på händelser.

Men att hantera infrastrukturen för att vara värd för och exekvera backend-kod kräver att du storlek, tillhandahåller och skalar ett gäng servrar, hanterar operativsystemuppdateringar, tillämpar säkerhetskorrigeringar och sedan övervakar all denna infrastruktur för prestanda och tillgänglighet.

Skulle det inte vara trevligt om du kunde fokusera på att bygga fantastiska applikationer utan att behöva oroa dig för deras infrastruktur? Det är där AWS Lambda kommer in i bilden.

Vad är AWS Lambda?

AWS Lambda är en serverlös datortjänst som låter dig köra din kod utan att behöva oroa dig för att tillhandahålla eller hantera någon server. Du kan köra din applikation eller backend-tjänst med AWS Lambda utan administration. Ladda bara upp din kod på Lambda, så kör den din kod, även skala infrastrukturen med hög tillgänglighet.

Koden som du kör på AWS Lambda kallas en lambdafunktion. För närvarande stöder den följande programmeringsspråk:

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

Den tillhandahåller också ett runtime-API som kan användas för att köra funktioner skrivna på andra (native) programmeringsspråk.

För att arbeta med AWS Lambda finns det bara en förutsättning; du bör ha ett konto på AWS där du kan komma åt AWS-hanteringskonsolen.

Du kan ringa Lambda is FaaS (Function-as-a-Service) av AWS.

AWS Lambda-funktioner

Nedan är några av de viktiga funktionerna som erbjuds av AWS Lambda:

  • AWS Lambda skalar enkelt infrastrukturen utan någon ytterligare konfiguration. Det minskar det operativa arbetet.
  • Det erbjuder flera alternativ som AWS S3, CloudWatch, DynamoDB, API Gateway, Kinesis, CodeCommit och många fler för att utlösa en händelse.
  • Du behöver inte investera i förväg. Du betalar endast för minnet som används av lambdafunktionen och minimal kostnad på antalet förfrågningar, vilket är kostnadseffektivt.
  • AWS Lambda är säker. Den använder AWS IAM för att definiera alla roller och säkerhetspolicyer.
  • Den erbjuder feltolerans för både tjänster som kör koden och funktionen. Du behöver inte oroa dig för att applikationen är nere.

AWS Lambda Prissättning

AWS Lambda-prissättning beror på varaktigheten och minnet som används av lambdafunktionen som du skrivit. Det maximala du kan tilldela är 3008 MB minne till en lambdafunktion i steg om 64 MB. Nedan finns en pristabell med alla minnesplattor i 100 millisekunder.

Hur fungerar AWS Lambda?

  • Först skapar du en funktion och lägger till grundläggande information till den, som det programmeringsspråk som ska användas i funktionen.
  • Sedan skriver du din kod på lambda-editorn eller laddar upp den på ett programmeringsspråk som stöds i en zip-fil.
  • När lambdakoden har laddats upp, hanterar tjänsten all kapacitetsskalning, patchning och administration av infrastrukturen.
  • För att köra koden måste du trigga lambdafunktionen med en extern AWS-tjänst, som kan anropa lambdafunktionen. Det kan till exempel vara en S3 hink.
  • Inom några sekunder är lambda redo att utlösa din funktion automatiskt när en händelse inträffar. AWS Lambda kör din kod när triggerhändelsen anropas. Den tillhandahåller hanterar och övervakar servrarna åt dig.
  • Om din funktion kräver mycket processorkraft kommer den att välja en instanstyp som har mer processorkraft och RAM, eller om din lambdakod bara körs i två sekunder kommer den att välja lägsta möjliga instans, vilket sparar pengar och tid .

Så det är så AWS Lambda fungerar internt. Låt mig visa dig en demo på AWS Lambda.

Skapa AWS Lambda-funktion

Jag ska skapa ett väldigt enkelt spel med lambda-funktionen i Node.js för den här artikeln. Jag kommer att skapa en lambdafunktion för att kasta en tärning, generera ett tal slumpmässigt mellan 1 och 6 och skriva ut det.

  • Gå till AWS-hanteringskonsolen och skriv Lambda i sökfältet och klicka på Lambda.

  • Funktionsfönster kommer att visas, klicka på Skapa funktion.

  • Du kommer att få olika alternativ för att skapa en funktion med deras förklaring. Eftersom jag skapar det från grunden kommer jag att välja Författare från början.

  • Efter det måste du fylla i nödvändig information för denna lambdafunktion. Ange funktionsnamnet och välj den Node.js-version som du vill använda för den här funktionen.
  • Du behöver också välja en verkställande roll. Eftersom jag inte har någon befintlig roll definierad i mitt AWS-konto kommer jag att gå vidare och välja skapa ett nytt rollalternativ. Klicka på Skapa funktion.

  • Du kommer att få ett framgångsmeddelande om att unction skapades. Klicka på Designer-fönstret för att minimera det.

  • Därefter kommer fönstret Funktionskod.
  • Lägg koden som nämns nedan i editorn. Du kan också ladda upp koden med zip-filen, men jag använder den interna AWS-kodredigeraren.

  • Det är en enkel kod som endast tar nummer från 1 till 6 och använder en slumpmässig matematisk funktion för att generera ett tal slumpmässigt och skriva ut det när funktionen anropas.
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;
};
  • Klicka nu på Test-knappen i det övre högra hörnet. Du kommer att få en popup för att konfigurera en testhändelse, ange ett händelsenamn och klicka på konfigurera.

  • Klicka nu på Spara och sedan Testa.

I exekveringsresultatet kommer du att se utdata från funktionslogiken vi just skrev. Den skrivs ut – Resultatet av tärningskast är 2.

  • Scrolla upp och klicka på detaljerade exekveringsresultat för att få den fullständiga sammanfattningen av denna lambdafunktion med förväntad utdata. Detaljer såsom begäran-id, varaktighet, fakturerad varaktighet, konfigurerade resurser etc. med loggutdata finns också tillgängliga.

  • Klicka på övervakningsfliken för att visualisera molnbevakningsloggarna och lambdafunktionens prestanda under en definierad tid.

  • Om du kommer in i loggarna som skapades av CloudWatch kan du titta på detaljerna om vad som hände när lambdafunktionen kördes, vilket övervakades av CloudWatch.

Slutsats

Komma igång med Lambda är verkligen lätt. Om din affärsapplikation kräver att köra backend-kod kan du överväga att använda en serverlös plattform som AWS Lambda.

Gillade du att läsa artikeln? Vad sägs om att dela med världen?