Introduktion til AWS Lambda

AWS Lambda er en lydhør skytjeneste, der inspicerer applikationens handlinger og reagerer ved at implementere brugerdefinerede koder, der kaldes funktioner. Før vi lærer emnet grundigt, lad os først forstå AWS Lambda fra to forskellige scenarier.

Problem

Du har et projekt i tankerne. Du formulerer algoritmen i dit sind. Du vurderer de muligheder for teknologistrøm, du kan bruge til at opbygge dit projekt. Alt går meget godt, indtil du er klar over, at du er nødt til at downloade den krævede software, IDE'er, værktøjer og anskaffe serverplads for at tjene din kode. Okay, du bliver nødt til at konfigurere den grundlæggende infrastruktur, før du starter faktisk kodning på dit projekt. Ohh, men du har brug for din applikation for at køre problemfrit på computere såvel som mobile grænseflader. Dette betyder mere infrastruktur, der skal opsættes, før du rammer jorden.

For meget af et overhead til de første udviklingsstadier? For meget af en overhead til styring af infrastruktur, selv når dit projekt skaleres op? Er dit projekt for stort på omkostningsoverslagene? Er dit fokus delt mellem alt andet end kodning?

Løsning - Dette er problemerne, men AWS Lambda er løsningen.

AWS Lambda - Serverløs computing

AWS Lambda giver dig mulighed for at køre din kode uden at give mulighed for servere og anden understøttende infrastruktur. Du kan kode i alle typer applikationer eller backend-tjenester uden at bekymre dig om serveren eller de understøttende DLL'er / software. Du behøver kun at fokusere på din kode. Hvil alt, hvad AWS sørger for, starter med at servere din kode, ved at udløse din kode på specifikke begivenheder, til at styre mere serverplads, når din kode skaleres op.

  • AWS fakturerer dig baseret på det tidspunkt, hvor din kode udføres, i multipla af 100-millisekund rammer. Der er ingen afgift for det tidspunkt, hvor din kode sidder på inaktiv på serveren. Hvilken bedre motivation for at skrive effektiv kode!
  • Udtrykket 'Serverløs' betegner ofte skiftet til skyen. Med skyen kan du delegere dit operationelle ansvar til AWS og fokusere mere på at give en bedre forbrugeroplevelse gennem din ansøgning.
  • Mens du gør det, håndterer AWS opgaver som infrastrukturstyring, klynger, opdatering, sikkerhed, vedligeholdelse af operativsystemer osv.

Hvorfor AWS Lambda?

Som det er den menneskelige natur, er det altid godt at evaluere, om teknologien / værktøjet er værd at gavne. Lad os se nogle af funktionerne i AWS Lambda, der gør livet let for udviklere.

1) Medbring din egen kode

Som AWS meget kærligt mærker denne funktion, giver Lambda dig kode på ethvert sprog, og AWS vil give den underliggende support. Det understøtter næsten alle de oprindelige sprog, JavaScript-rammer, tredjepartsbiblioteker og hvad ikke.

2) En række andre AWS-tjenester

AWS er ​​en one-stop shop for al den nødvendige infrastruktur. Det har nem integration inden for forskellige tjenester såsom opbevaring (S3), databaser (RDS, DynamoDB), servere (EC2), sikkerhedsadministration (IAM), netværk (Route53, CloudFront) og meget mere.

3) Brugerdefineret kode

Brug for at skrive en tilpasset back-end-logik, der er skræddersyet til en enkelt klient? I stedet for at skrive logikken på klientsiden, skal du bruge AWS Lambda til at skrive tilpassede tjenester og gøre din kode fri for klientplatformopdateringer.

4) Betal pr. Brug

Du behøver ikke afskalde bukke, for den tid din kode sidder inaktiv. Hvis din tjeneste kun modtager hits i løbet af dagen, skal du kun betale for den tid, din kode udføres. Dette beregnes i tidsrammer på 100 millisekunder.

5) Automatisk skalering

AWS opskalerer automatisk ressourcer, når din tjeneste modtager højere hits. Du behøver ikke konfigurere noget for at skaffe yderligere ressourcer. Der er ingen grænse for antallet af anmodninger, som din kode kan håndtere. Således forbliver ydelsen høj på alle tidspunkter.

6) Amazons gendannelse af katastrofer

Med din kode og dine data replikeret på tværs af flere tilgængelighedszoner påvirker enhver facilitetsfejl ikke din applikation. Anmodningerne dirigeres automatisk til en anden zone.

Lad os komme i gang med AWS Lambda Tutorial

Begejstret? Lad os komme i gang med AWS Lambda. Da det er en brugerdefineret tværs af programmeringsverdenen, vil vi starte med et simpelt 'Hello World'-program.

Forudsatte trin

For at komme i gang med AWS Lambda skal du have en AWS-konto. Det er forskelligt fra Amazon-kontoen, som du bruger til shopping. Hvis du allerede har en, skal du logge ind på konsollen og springe til næste afsnit. Hvis ikke, følg nedenstående trin. Bare rolig, det er absolut gratis, så længe din ansøgning ikke overskrider den frie niveaugrænse.

Opret en AWS-konto

  • Åbn AWS-konsol. Klik på Opret ny AWS-konto.

  • Udfyld dine oplysninger, og opdater dine kortoplysninger. Amazon opkræver ikke noget for dig, medmindre du overskrider grænsen for fri niveau. Grænsen for fri niveau er brugt til udvikling af enkelt brugere.
  • Når du er færdig med tilmeldingsprocessen, skal du besøge linket i trin 1 igen. Denne gang skal du logge ind på konsollen med dit brugernavn og din adgangskode.

Gå ind i Lambda Console

Når du er logget ind på AWS-administrationskonsollen, ser du et link til Tjenester i overskriftsruden. Klik på det, så finder du Lambda i Compute- underafsnittet.

Sådan ser lambda-konsollen ud ved første øjekast:

Du kan også gennemse til Lambda-betjeningspanelet og se statistikker over din kode. Det giver dig et indblik i indkaldelsestælling, eksekveringsvarighed, succes og fejlforhold osv. Et eksempel på instrumentbrættet ligner nedenstående.

OK, så det næste trin er at oprette en funktion. Alle koder i Lambda betegnes som funktioner, fordi de godt udfører en bestemt opgave. Bemærk en knappen Opret funktion øverst til højre på Lambda-konsollen. Den knap fører os til nedenstående skærm:

Oprettelse af en AWS Lambda-funktion

Lad os se, hvordan man opretter AWS Lambda-funktion ved at følge nedenstående trin.

Trin 1

Nu har vi tre muligheder til at begynde med:

  • Forfatter fra Scratch - Du får en blank skabelon og kan skrive din kode fra bunden.
  • Brug en Blueprint - En skabelon med nogle biblioteker inkluderet, der passer til dine behov. Du behøver kun at arbejde på logikken i din kode.
  • Gennemse Serverless App Repository - Klar til at bruge indbyggede koder, der udfører forskellige funktioner. Disse kan også let bruges i din kode.

For at passe til vores formål med at forstå Lambda, skal vi først bruge en plan. Når du er sikker nok, kan du begynde at konstruere din kode fra bunden og udforske potentialet i AWS Lambda.

Klik nu på Brug en plan og søg efter ordet hej. Følgende resultater dukker op. Lad os oprette vores Hello World-applikation ved hjælp af NodeJS.

Trin 2

Nu ankommer vi til konfigurationsskærmen for vores funktion. Indtast et navn efter dit valg, og vælg 'Opret en ny rolle fra AWS-politikskabeloner' i rullemenuen for udførelsesrolle. Giv rollenavnet som 'lambda_basic_execution'.

Bemærk - En udførelsesrolle definerer de tilladelser, som AWS Lambda kan påtage sig, mens du udfører din kode. En grundlæggende eksekvering betyder, at lambda simpelthen udfører koden, hvor der ikke er et tredjepartsbibliotek involveret. Hvis din kode skal interagere med Amazon S3 eller RDS eller EC2 eller andre tjenester, skal der gives passende tilladelser til at få adgang til disse tjenester til din AWS lambda-funktion.

Klik på knappen Opret funktion i bunden af ​​skærmen. Følgende skærmbillede vises på den vellykkede oprettelse af din funktion.

Bemærk - ARN eller Amazon Resource Name er et unikt navn på din funktion. Dette kan bruges som slutpunkt til at udløse din funktion. Triggerne i designerafsnittet er hvor du tilføjer tjenester, der kan udløse din funktion. I hver service, der kan udløse din funktion, skal din funktions ARN konfigureres. Det er som en tovejs binding af tjenester. Trigger-tjenesten ved, at den skal ramme din funktion, og din funktion vil være konfigureret til at modtage anmodninger fra de trigger-tjenester, du tilføjer. Tilføjelse af triggere er det næste niveau i lambda-tutorials og er uden for denne artikels rækkevidde.

Trin 3

Under designer-underafsnittet er funktionskodens underafsnit. Dette er din inline IDE lettet af Amazon. Det ser sådan ud:

  • Under rullemenuen Kodeindtastningstype kan du vælge, om du vil redigere kode inline eller uploade en zip-fil fra dit system eller uploade en zip-fil fra Amazon S3. Uploadindstillingerne kan bruges til komplekse koder, der let kan redigeres i en bedre ideel IDE i dit lokale system.
  • Runtime er det sprog / ramme, der understøtter din kode.
  • En Handler er en påkaldelsesfunktion i din AWS lambda-funktion. Din AWS lambda-funktion kan have flere behandlere, og du kan specificere, hvilken håndterer du skal begynde at udføre med. Picture Handlers som metoder, der er udpeget til at udføre specifikke opgaver.

Trin 4

Øverst på siden vil du se en strimmel med nogle knapper. Klik på Vælg en testhændelse for at teste vores kode. Dette vil bede dig om at konfigurere en testhændelse, i tilfælde af at der ikke oprettes nogen.

Konfigurer din første testhændelse som den nedenfor:

Gem testbegivenheden, og klik på Test. Du vil se udførelsesresultaterne for din funktion.

  • Respons - Slutresultatet returneret af din funktion. Bemærk, at vores funktion returnerede nøgle1.
  • Anmodnings-id - Hver anmodning til din funktion har et unikt anmodnings-id. Disse bruges af Amazon til at spore anmodninger og generere dine faktureringsoplysninger.
  • Funktionslogfiler - Den mest indsigtsfulde del af AWS Lambda. Dette er detaljerede logfiler, der specificerer starten og slutningen af ​​udførelsen af ​​din funktion. I modsætning til fejlfinding i sædvanlige IDE'er, er AWS Lambda stærkt afhængig af logfiler til fejlfinding. De gemmes også i CloudWatch til fremtidige referencer.

Tillykke! Du har oprettet en Lambda-funktion med succes. Men vent, vi har ikke påberåbt det endnu. Vi testede det lige fra vores eget miljø. Lad os påberåbe os det fra omverdenen.

Påkaldelse af AWS Lambda-funktion

Vi opretter et REST API for at påkalde Lambda funktionen.

Trin 1

Gå til Amazon API Gateway. Det kan også findes under Tjenester -> Netværk og levering af indhold. Klik på Opret API.

Trin 2

Konfigurer dine API-grundlæggende detaljer som nedenfor, og klik på Opret API.

Trin 3

Nu oprettes din API, men der er ingen HTTP-metode defineret i API'en. Klik på rullemenuen Handlinger og Opret metode. Du vil se, at der vises en mindre dropdown i venstre rude. Klik på GET fra denne dropdown. Så grundlæggende opretter vi en HTTP GET-metode til vores API.

Trin 4

Konfigurer din GET-metode til at påkalde en lambda-funktion som illustreret nedenfor. Du skal specificere din Lambda-funktions ARN i feltet Lambda-funktion. Klik på Gem.

Når din GET-metode er gemt, vil du ankomme til skærmbilledet for metodeudførelse nedenfor.

Trin 5

Nu oprettes også din GET-metode. Men vi har stadig ikke leveret de nøgleværdipar, som vi gjorde i vores testmiljø. Vores AWS Lambda-funktion forventer tre taster og værdier. Lad os definere dem.

Klik på Integration Request og rulle ned til kortlægningsskabeloner. Definer din kortlægningsskabelon som nedenfor. Indholdstypen er applikation / json. Dette er simpelthen formatet af de parametre, du vil sende i dit anmodningsorgan.

API'en er nu klar til at blive implementeret.

Trin 6

Klik på Handlinger og implementer API. I den nye pop-up skal du vælge Ny scene og give et meningsfuldt navn og beskrivelse.

Du ankommer til nedenstående skærmbillede med REST-endepunktet for din API konfigureret og klar til brug.

Klik på slutpunktet, og browseren sender en anmodning til din Lambda-funktion og viser svaret.

Tillykke! Du har også påberåbt din Lambda-funktion også. Ret en præstation.

Hvem kan lære AWS Lambda

Det skal være tydeligt nu, at AWS Lambda-funktion kræver lidt viden om tjenester, implementering af tjenester, anmodninger og svar. Dette er grundlæggende ting, som enhver computerprogrammør skal kende for at oprette webapplikationer. Hvis du ikke har tilstrækkelig viden om dette emne, anbefales det at få denne viden, så man sikrer problemfri kodning i AWS Lambda.

AWS har også omfattende dokumentation om alle dets tjenester. Udforsk dokumentationen for en dybere forståelse af AWS verden.

Karriere i AWS Lambda

Det er ikke kun Lambda, men hele Amazon Web Services services er en blomstrende sektor i dag. Der er et efterspørgsel efter eksperter i AWS-tjenester. AWS leverer også certificeringer, der passer til dit ekspertiseniveau. Udforsk AWS-webstedet for at få yderligere oplysninger om dette.

Konklusion

Nu hvor du har forstået det grundlæggende i AWS Lambda-funktioner, skal du fortsætte med at oprette flere funktioner og integrere med andre AWS-tjenester. Bliv ved med at spille og fortsæt med at lære. Skål!

Anbefalede artikler

Dette har været en guide til Hvad er AWS Lambda. I denne tutorial om AWS Lambda-funktion har vi forklaret, hvordan man konfigurerer og distribuerer API. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Hvad er AWS? | Hvordan virker det?
  2. Karriere i Azure | Uddannelse | Karrierevej
  3. Vejledning til Cloud Computing Services
  4. Hvad er alternativerne til AWS?
  5. Komplet guide til Cloud Computing-tjenesteudbydere

Kategori: