Introduktion till AWS Lambda

AWS Lambda är en lyhörd molntjänst som inspekterar applikationens åtgärder och svarar genom att använda användardefinierade koder som kallas funktioner. Innan vi lär oss ämnet i djupet låt oss först förstå AWS Lambda från två olika scenarier.

Problem

Du har ett projekt i åtanke. Du formulerar algoritmen i ditt sinne. Du utvärderar de tekniska stackalternativen du kan använda för att bygga ditt projekt. Allt går väldigt bra tills du inser att du måste ladda ner nödvändig programvara, IDE: er, verktyg och skaffa serverutrymme för att tjäna din kod. Okej, du skulle behöva konfigurera den grundläggande infrastrukturen innan du startar den faktiska kodningen på ditt projekt. Ohh, men du behöver din applikation för att köra sömlöst på både datorer och mobila gränssnitt. Detta innebär mer infrastruktur att konfigurera innan du träffar markkodningen.

För mycket av omkostnaderna för de första utvecklingsstadierna? För mycket av omkostnaderna för att hantera infrastruktur även när ditt projekt skalas upp? Är ditt projekt överskattat med kostnadsberäkningarna? Är ditt fokus delat mellan allt annat än kodning?

Lösning - Det här är problemen men AWS Lambda är lösningen.

AWS Lambda - Serverless Computing

Med AWS Lambda kan du köra din kod utan att tillhandahålla servrar och annan stödjande infrastruktur. Du kan koda i alla typer av applikationer eller backendtjänster utan att oroa dig för servern eller de stödjande DLL / programvaran. Du behöver bara fokusera på din kod. Vila allt tas om hand av AWS, börjar med att servera din kod, genom att utlösa din kod på specifika händelser, till att hantera mer serverutrymme när din kod skalas upp.

  • AWS fakturerar dig baserat på den tid din kod körs i multiplar av 100-millisekund ramar. Det kostar ingen kostnad för den tid som din kod är inaktiv på servern. Vilken bättre motivation att skriva effektiv kod!
  • Termen "Serverlös" betecknar ofta övergången till molnet. Med molnet kan du delegera ditt operativa ansvar till AWS och fokusera mer på att ge en bättre konsumentupplevelse genom din applikation.
  • Medan du gör det, hanterar AWS uppgifter som infrastrukturhantering, klustering, lappning, säkerhet, underhåll av operativsystem etc.

Varför AWS Lambda?

Som människans natur är det alltid bra att utvärdera om tekniken / verktyget är värt nyttan. Låt oss se några av funktionerna i AWS Lambda som gör livet enkelt för utvecklare.

1) Ta med din egen kod

Eftersom AWS mycket gärna släpper efter den här funktionen låter Lambda dig koda på vilket språk som helst och AWS skulle ge det underliggande stödet. Det stöder nästan alla modersmål, JavaScript-ramar, tredjepartsbibliotek och vad inte.

2) En mängd andra AWS-tjänster

AWS är en enda butik för all infrastruktur som behövs. Det har enkel integration i olika tjänster som lagring (S3), databaser (RDS, DynamoDB), servrar (EC2), säkerhetshantering (IAM), nätverk (Route53, CloudFront) och mycket mer.

3) Anpassad kod

Behöver du skriva en anpassad back-end-logik skräddarsydd för en enda klient? Istället för att skriva logiken på klientsidan, använd AWS Lambda för att skriva anpassade tjänster och göra din kod fri från klientplattformuppdateringar.

4) Betala per användning

Du behöver inte släcka ut pengar förrän din kod sitter inaktiv. Om din tjänst får träffar bara under dagen, betal bara för den tid din kod körs. Detta beräknas i tidsramar på 100 millisekunder.

5) Automatisk skalning

AWS skalar automatiskt upp resurser när din tjänst får högre träffar. Du behöver inte konfigurera något för att skaffa ytterligare resurser. Det finns ingen begränsning för antalet förfrågningar som din kod kan hantera. Således är prestandan fortfarande hög.

6) Amazons katastrofåterställning

Med din kod och dina data replikerade över flera tillgänglighetszoner påverkar inte något anläggningsfel din applikation. Förfrågningarna dirigeras automatiskt till en annan zon.

Låt oss komma igång med AWS Lambda Tutorial

Upphetsad? Låt oss komma igång med AWS Lambda. Eftersom det är en anpassning i hela programmeringsvärlden, skulle vi börja med ett enkelt "Hello World" -program.

Förutsatta steg

För att komma igång med AWS Lambda måste du ha ett AWS-konto. Det skiljer sig från Amazon-kontot som du använder för shopping. Om du redan har en, logga in på konsolen och hoppa till nästa avsnitt. Om inte, följ stegen nedan. Oroa dig inte, det är helt gratis så länge din ansökan inte överskrider gränsen för kostnadsfri nivå.

Skapa ett AWS-konto

  • Öppna AWS-konsolen. Klicka på Skapa nytt AWS-konto.

  • Fyll i din information och uppdatera dina kortinformation. Amazon debiterar dig ingenting om du inte överskrider gränsen för fri nivå. Gränsen för fria nivåer är riklig för utveckling av en enskild användare.
  • När du har slutfört registreringsprocessen besöker du länken i steg 1 igen. Den här gången loggar du in på konsolen med ditt användarnamn och lösenord.

Gå in i Lambda Console

När du har loggat in på AWS-hanteringskonsolen ser du en länk till tjänster i rubrikrutan. Klicka på den så hittar du Lambda i Compute- underavsnittet.

Så ser lambda-konsolen ut vid första anblicken:

Du kan också bläddra till Lambda-instrumentpanelen och se statistik över din kod. Det ger dig en inblick i anropsräkningen, körningens varaktighet, framgång och felförhållande, etc. En exempelpanel ser ut som nedan.

Ok, så nästa steg är att skapa en funktion. Alla koder i Lambda benämns som funktioner eftersom de väl utför en specifik uppgift. Lägg märke till en knapp för att skapa funktion längst upp till höger på Lambda-konsolen. Den knappen tar oss till nedanstående skärm:

Skapa en AWS Lambda-funktion

Låt oss se hur du skapar AWS Lambda-funktion genom att följa stegen nedan.

Steg 1

Nu har vi tre alternativ, till att börja med:

  • Författare från Scratch - Du skulle få en tom mall och kan skriva din kod från början.
  • Använd en ritning - En mall med några bibliotek inkluderade för att passa dina behov. Du behöver bara arbeta med logiken för din kod.
  • Bläddra i Serverless App Repository - Redo att använda inbyggda koder som utför olika funktioner. Dessa kan också lätt användas i din kod.

För att passa vårt syfte att förstå Lambda skulle vi först använda en plan. När du är tillräckligt säker kan du börja bygga din kod från grunden och utforska potentialen hos AWS Lambda.

Klicka nu på Use A Blueprint och sök efter ordet hej. Följande resultat dyker upp. Låt oss skapa vår Hej världsapplikation med NodeJS.

Steg 2

Nu kommer vi till konfigurationsskärmen för vår funktion. Ange ett namn du väljer och välj "Skapa en ny roll från AWS-policymallar" i rullgardinsmenyn för utförande. Ge rollnamnet som 'lambda_basic_execution'.

Obs - En exekveringsroll definierar de behörigheter som AWS Lambda kan ta när du kör din kod. En grundläggande exekvering innebär att lambda helt enkelt kommer att köra koden där det inte ingår ett tredje parts bibliotek. Om din kod behöver interagera med Amazon S3 eller RDS eller EC2 eller andra tjänster måste lämpliga behörigheter för åtkomst till dessa tjänster ges till din AWS lambda-funktion.

Klicka på knappen Skapa funktion längst ner på skärmen. Följande skärm visas på din framgång av din funktion.

Obs - ARN eller Amazon Resource Name är ett unikt namn på din funktion. Detta kan användas som slutpunkt för att utlösa din funktion. Trigrarna i designeravdelningen är där du lägger till tjänster som kan utlösa din funktion. I varje tjänst som kan utlösa din funktion, måste din funktions ARN konfigureras. Det är som en tvåvägsbindning av tjänster. Trigartjänsten skulle veta att den måste träffa din funktion och din funktion skulle konfigureras för att ta emot förfrågningar från de avtryckartjänster du lägger till. Lägga till triggers är nästa nivå i lambda-tutorials och ligger utanför denna artikel.

Steg 3

Under avsnittet med designer-underavsnittet är funktionskodens underavsnitt. Detta är din inline IDE som underlättas av Amazon. Det ser ut så här:

  • Under rullgardinsmenyn kodinmatningstyp kan du välja om du vill redigera kod inline eller ladda upp en zip-fil från ditt system eller ladda upp en zip-fil från Amazon S3. Uppladdningsalternativen kan användas för komplexa koder som enkelt kan redigeras i någon bättre IDE i ditt lokala system.
  • Runtime är det språk / ramverk som stöder din kod.
  • En hanterare är en kallningsfunktion i din AWS lambda-funktion. Din AWS lambda-funktion kan ha flera hanterare och du kan ange vilken hanterare som ska börja köras med. Picture Handlers som metoder som är avsedda att utföra specifika uppgifter.

Steg 4

På toppen av sidan ser du en remsa med några knappar. Klicka på Välj ett testhändelse för att testa vår kod. Detta uppmanar dig att konfigurera en testhändelse, om ingen skapas.

Konfigurera din första testhändelse som den nedan:

Spara testhändelsen och klicka på Test. Du ser exekveringsresultaten för din funktion.

  • Svar - Slutresultatet som returneras av din funktion. Observera att vår funktion returnerade nyckel1.
  • Begäran-ID - Varje förfrågan till din funktion har ett unikt förfrågnings-ID. Dessa används av Amazon för att spåra förfrågningar och generera din faktureringsinformation.
  • Funktionsloggar - Den mest insiktsfulla delen av AWS Lambda. Det här är detaljerade loggar som anger början och slutet av körningen av din funktion. Till skillnad från felsökning i vanliga IDE: er, förlitar AWS Lambda sig starkt på loggar för felsökningsändamål. De lagras också i CloudWatch för framtida referenser.

Grattis! Du har framgångsrikt skapat en Lambda-funktion. Men vänta, vi har inte åberopat det ännu. Vi testade just det från vår egen miljö. Låt oss åberopa det från omvärlden.

Åkallar AWS Lambda-funktionen

Vi skulle skapa ett REST-API för att åberopa Lambda-funktionen.

Steg 1

Gå till Amazon API Gateway. Det finns också under Tjänster -> Nätverk och leverans av innehåll. Klicka på Skapa API.

Steg 2

Konfigurera dina API-grunduppgifter enligt nedan och klicka på Skapa API.

Steg 3

Nu skapas ditt API, men det finns ingen HTTP-metod definierad i API: n. Klicka på rullgardinsmenyn Åtgärder och Skapa metod. Du kommer att märka att en mindre dropdown visas i den vänstra rutan. Klicka på GET från den här rullgardinsmenyn. Så i princip skapar vi en HTTP GET-metod för vårt API.

Steg 4

Konfigurera din GET-metod för att åberopa en lambda-funktion som illustreras nedan. Du måste ange din Lambda-funktionens ARN i fältet Lambda-funktion. Klicka på Spara.

När din GET-metod har sparats kommer du fram till nedanstående skärm för metodutförande.

Steg 5

Nu skapas också din GET-metod. Men vi har fortfarande inte levererat de nyckelvärdespar som vi gjorde i vår testmiljö. Vår AWS Lambda-funktion förväntar sig tre nycklar och värden. Låt oss definiera dem.

Klicka på Integrationsbegäran och bläddra ner till Kartläggningsmallar. Definiera din kartläggningsmall enligt nedan. Innehållstypen är applikation / json. Detta är helt enkelt formatet för parametrarna som du skickar i din begäran.

API: n är nu redo att distribueras.

Steg 6

Klicka på Åtgärder och distribuera API. I distributionen popup, välj New Stage och ge ett meningsfullt namn och beskrivning.

Du kommer fram till nedanstående skärm med REST-slutpunkten för din API konfigurerad och redo att användas.

Klicka på slutpunkten så kommer webbläsaren att skicka en begäran till din Lambda-funktion och visa svaret.

Grattis! Du har framgångsrikt åberopat din Lambda-funktion också. Ganska en prestation.

Vem kan lära sig AWS Lambda

Det måste vara tydligt nu att AWS Lambda-funktion kräver lite kunskap om tjänster, distribution av tjänster, förfrågningar och svar. Detta är grundläggande grejer som alla datorprogrammerare måste veta för att skapa webbapplikationer. Om du inte har tillräcklig kunskap om detta ämne rekommenderas att du får den kunskapen så att problemfri kodning i AWS Lambda säkerställs.

AWS har också omfattande dokumentation om alla sina tjänster. Utforska dokumentationen för en djupare förståelse av AWS-världen.

Karriär i AWS Lambda

Det är inte bara Lambda, utan hela Amazon Web Services-sektorn är en blomstrande idag. Det finns en efterfrågan på experter inom AWS-tjänster. AWS tillhandahåller också certifieringar som passar din kompetensnivå. Utforska AWS-webbplatsen för mer information om detta.

Slutsats

Nu när du har förstått grunderna i AWS Lambda-funktioner, fortsätt med att skapa fler funktioner och integrera med andra AWS-tjänster. Fortsätt spela och fortsätt att lära. Skål!

Rekommenderade artiklar

Detta har varit en guide till What is AWS Lambda. I denna handledning om AWS Lambda-funktion har vi förklarat hur man konfigurerar och distribuerar API. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -

  1. Vad är AWS? | Hur fungerar det?
  2. Karriär i Azure | Utbildning | Karriärsbana
  3. Guide till Cloud Computing Services
  4. Vilka är alternativen till AWS?
  5. Komplett guide till leverantörer av Cloud Computing Service

Kategori: