Introduksjon til AWS Lambda

AWS Lambda er en responsiv skytjeneste som inspiserer applikasjonens handlinger og svarer ved å distribuere brukerdefinerte koder kjent som funksjoner. Før vi lærer emnet grundig, la oss først forstå AWS Lambda fra to forskjellige scenarier.

Problem

Du har et prosjekt i tankene. Du formulerer algoritmen i tankene dine. Du vurderer alternativene for teknologibunker du kan bruke til å bygge prosjektet ditt. Alt går veldig bra til du innser at du må laste ned den nødvendige programvaren, IDEer, verktøy og skaffe serverplass for å tjene koden. OK, du må konfigurere den grunnleggende infrastrukturen før du starter faktisk koding på prosjektet. Ohh, men du trenger at applikasjonen din kjører sømløst på datamaskiner så vel som mobile grensesnitt. Dette betyr mer infrastruktur å sette opp før du treffer bakkekodingen.

For mye av et overhead for de første utviklingsstadiene? For mye av kostnadene for å administrere infrastruktur selv om prosjektet skaleres opp? Er prosjektovervåkningen din over kostnadsoverslagene? Er fokuset ditt delt mellom alt annet enn koding?

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

AWS Lambda - Serverløs databehandling

AWS Lambda lar deg kjøre koden din uten å sørge for servere og annen støttende infrastruktur. Du kan kode i alle typer applikasjoner eller backend-tjenester uten å bekymre deg for serveren eller den støttende DLL-en / programvaren. Du trenger bare å fokusere på koden din. Hvil alt er ivaretatt av AWS, starter med å servere koden din, gjennom å utløse koden din på spesifikke hendelser, til å administrere mer serverplass når koden skaleres opp.

  • AWS fakturerer deg basert på tidspunktet for utførelse av koden, i flere 100 millisekund rammer. Det koster ingen gebyr for den tiden koden din er inaktiv på serveren. Hvilken bedre motivasjon for å skrive effektiv kode!
  • Begrepet 'Serverløs' betegner ofte skiftet til skyen. Med skyen kan du delegere ditt operative ansvar til AWS og fokusere mer på å gi en bedre forbrukeropplevelse gjennom søknaden din.
  • Mens du gjør det, håndterer AWS oppgaver som infrastrukturstyring, klynging, lapping, sikkerhet, vedlikehold av operativsystemer, etc.

Hvorfor AWS Lambda?

Som det er menneskets natur, er det alltid godt å vurdere om teknologien / verktøyet er verdt fordelen. La oss se noen av funksjonene i AWS Lambda som gjør livet enkelt for utviklere.

1) Ta med din egen kode

Som AWS veldig glad slår av denne funksjonen, lar Lambda deg kode på ethvert språk og AWS vil gi den underliggende støtten. Den støtter nesten alle morsmål, JavaScript-rammer, tredjepartsbiblioteker og hva som ikke.

2) En rekke andre AWS-tjenester

AWS er ​​en one-stop shop for all infrastruktur som trengs. Det har enkel integrasjon i forskjellige tjenester som lagring (S3), databaser (RDS, DynamoDB), servere (EC2), sikkerhetsadministrasjon (IAM), nettverk (Route53, CloudFront) og mye mer.

3) Tilpasset kode

Trenger du å skrive en tilpasset back-end-logikk skreddersydd for en enkelt klient? I stedet for å skrive logikken på klientsiden, bruk AWS Lambda til å skrive tilpassede tjenester og gjøre koden fri for klientplattformoppdateringer.

4) Betal per bruk

Du trenger ikke skylle ut penger for den gangen koden din er inaktiv. Hvis tjenesten din bare får treff på dagtid, må du bare betale for den tiden koden blir utført. Dette beregnes i tidsrammer på 100 millisekunder.

5) Automatisk skalering

AWS skalerer automatisk opp ressursene når tjenesten din mottar høyere treff. Du trenger ikke konfigurere noe for å skaffe flere ressurser. Det er ingen begrensning i antall forespørsler koden din kan håndtere. Dermed forblir ytelsen høy til enhver tid.

6) Amazons gjenoppretting av katastrofer

Med koden og dataene dine som er replisert over flere tilgjengelighetssoner, påvirker ikke eventuell anleggsfeil applikasjonen din. Forespørslene dirigeres automatisk til en annen sone.

La oss komme i gang med AWS Lambda Tutorial

Spent? La oss komme i gang med AWS Lambda. Ettersom det er en skikk i hele programmeringsverdenen, vil vi starte med et enkelt "Hello World" -program.

Forkrevde trinn

For å komme i gang med AWS Lambda, må du ha en AWS-konto. Det er forskjellig fra Amazon-kontoen du bruker til shopping. Hvis du allerede har en, logg deg på konsollen og hopp til neste seksjon. Hvis ikke, følg trinnene nedenfor. Ikke bekymre deg, det er helt gratis så lenge søknaden din ikke overskrider grensen for gratis nivå.

Opprett en AWS-konto

  • Åpne AWS-konsoll. Klikk på Opprett ny AWS-konto.

  • Fyll ut informasjonen din og oppdater kortinformasjonen. Amazon vil ikke belaste deg noe med mindre du overskrider den begrensede bruksgrensen. Grensesnittet for bruk av fri nivå er rikelig for utvikling av enkeltbrukere.
  • Etter å ha fullført registreringsprosessen, besøk koblingen i trinn 1 igjen. Denne gangen, logg inn på konsollen med ditt brukernavn og passord.

Gå inn i Lambda Console

Når du har logget deg på AWS-administrasjonskonsollen, vil du se en lenke til Tjenester i toppruten. Klikk på den, så finner du Lambda i Compute- underavsnittet.

Slik ser lambda-konsollen ut ved første øyekast:

Du kan også bla til Lambda-oversikten og se statistikk over koden din. Det gir deg et innblikk i påkallingstall, utførelsesvarighet, suksess og feilforhold, osv. Et eksempel på instrumentpanelet ser ut som under.

OK, så neste trinn er å lage en funksjon. Alle koder i Lambda betegnes som funksjoner fordi de vel utfører en spesifikk oppgave. Legg merke til en Create Function-knapp øverst til høyre på Lambda-konsollen. Den knappen tar oss til skjermbildet nedenfor:

Opprette en AWS Lambda-funksjon

La oss se hvordan du oppretter AWS Lambda-funksjon ved å følge trinnene nedenfor.

Trinn 1

Nå har vi tre alternativer, til å begynne med:

  • Forfatter fra Scratch - Du vil bli gitt en blank mal og kan skrive koden din fra bunnen av.
  • Bruk en blåkopi - En mal med noen biblioteker inkludert som passer dine behov. Du trenger bare å jobbe med logikken til koden din.
  • Bla gjennom Serverless App Repository - Klar til å bruke innebygde koder som utfører forskjellige funksjoner. Disse kan lett brukes i koden din også.

For å passe til vårt formål å forstå Lambda, vil vi først bruke en blåkopi. Når du er trygg på nok, kan du begynne å konstruere koden din fra bunnen av og utforske potensialet til AWS Lambda.

Klikk nå på Bruk en blåkopi og søk etter ordet hei. Følgende resultater dukker opp. La oss lage vår hei-verden-applikasjon ved å bruke NodeJS.

Steg 2

Nå kommer vi til konfigurasjonsskjermen for vår funksjon. Skriv inn et navn du ønsker, og velg 'Opprett en ny rolle fra AWS-policy maler' fra rullegardinmenyen for utførelsesrolle. Gi rollenavnet som 'lambda_basic_execution'.

Merk - En utførelsesrolle definerer tillatelsene som AWS Lambda kan påta seg mens du kjører koden din. En grunnleggende utførelse betyr at lambda ganske enkelt vil utføre koden der det ikke er tredjepartsbibliotek involvert. I tilfelle koden din trenger å samhandle med Amazon S3 eller RDS eller EC2 eller andre tjenester, må passende tillatelser til å få tilgang til disse tjenestene gis til din AWS lambda-funksjon.

Klikk på Create Function-knappen nederst på skjermen. Følgende skjermbilde vises på vellykket opprettelse av din funksjon.

Merk - ARN eller Amazon Resource Name er et unikt navn på funksjonen din. Dette kan brukes som sluttpunkt for å utløse funksjonen din. Triggerne i designerseksjonen er der du legger til tjenester som kan utløse funksjonen din. I hver tjeneste som kan utløse funksjonen din, må funksjonen til ARN konfigureres. Det er som en toveis binding av tjenester. Trigger-tjenesten vil vite at den trenger å treffe funksjonen din, og funksjonen din vil være konfigurert til å motta forespørsler fra trigger-tjenestene du legger til. Å legge til utløsere er det neste nivået med lambda-tutorials og er utenfor omfanget av denne artikkelen.

Trinn 3

Under designer-seksjonen er Funksjonskodedelen. Dette er din inline IDE tilrettelagt av Amazon. Det ser noe slik ut:

  • Under rullegardinmenyen Type kodeinnføring kan du velge om du vil redigere kodelinje eller laste opp en zip-fil fra systemet ditt eller laste opp en zip-fil fra Amazon S3. Opplastingsalternativene kan brukes til komplekse koder som enkelt kan redigeres i noen bedre funksjoner i ditt lokale system.
  • Runtime er språket / rammeverket som støtter koden din.
  • En Handler er en påkallingsfunksjon inne i din AWS lambda-funksjon. AWS lambda-funksjonen din kan ha flere behandlere, og du kan spesifisere hvilken behandler du vil starte utførelsen med. Picture Handlers som metoder som er utpekt for å utføre spesifikke oppgaver.

Trinn 4

På toppen av siden ser du en stripe med noen knapper. Klikk på Velg en testhendelse for å teste koden vår. Dette vil be deg om å konfigurere en testhendelse, i tilfelle ingen opprettes.

Konfigurer din første testhendelse som den nedenfor:

Lagre testhendelsen og klikk på Test. Du vil se utførelsesresultatene for funksjonen din.

  • Respons - Sluttresultatet returnert av din funksjon. Legg merke til at vår funksjon returnerte nøkkel1.
  • Forespørsel-ID - Hver forespørsel til din funksjon har en unik forespørsel-ID. Disse brukes av Amazon for å spore forespørsler og generere faktureringsinformasjon.
  • Funksjonslogger - Den mest innsiktsfulle delen av AWS Lambda. Dette er detaljerte logger som spesifiserer starten og slutten av utførelsen av funksjonen din. I motsetning til avlusing i vanlige IDE-er, er AWS Lambda avhengig av logger for feilsøking. De er lagret i CloudWatch for fremtidige referanser også.

Gratulerer! Du har opprettet en Lambda-funksjon. Men vent, vi har ikke påkalt det ennå. Vi testet det nettopp fra vårt eget miljø. La oss påkalle det fra omverdenen.

Påkaller AWS Lambda-funksjonen

Vi ville lage et REST API for å påkalle Lambda-funksjonen.

Trinn 1

Gå til Amazon API Gateway. Det finnes også under Tjenester -> Nettverk og levering av innhold. Klikk på Opprett API.

Steg 2

Konfigurer dine grunnleggende API-detaljer som nedenfor og klikk på Opprett API.

Trinn 3

Nå er API-en din opprettet, men det er ingen HTTP-metode definert i API-en. Klikk på Handlinger-rullegardinmenyen og Lag metode. Du vil merke at et mindre nedtrekksvindu vises i venstre rute. Klikk på GET fra denne rullegardinmenyen. Så i utgangspunktet lager vi en HTTP GET-metode for APIen vår.

Trinn 4

Konfigurer GET-metoden din for å påkalle en lambda-funksjon som illustrert nedenfor. Du må spesifisere Lambda-funksjonens ARN i Lambda Funksjon-feltet. Klikk på Lagre.

Når GET-metoden er lagret, kommer du til skjermbildet for metodeutførelse nedenfor.

Trinn 5

Nå opprettes også GET-metoden din. Men vi har fremdeles ikke gitt nøkkelverdiparene som vi gjorde i testmiljøet vårt. AWS Lambda-funksjonen forventer tre nøkler og verdier. La oss definere dem.

Klikk på Integration Request og bla nedover til Kartleggingsmaler. Definer kartleggingsmalen som nedenfor. Innholdstypen er applikasjon / json. Dette er ganske enkelt formatet til parametrene du vil sende i forespørselsorganet.

API er nå klar til å bli distribuert.

Trinn 6

Klikk på Handlinger og distribuer API. I distribusjons-popup velger du New Stage og gir et meningsfylt navn og beskrivelse.

Du kommer til skjermbildet nedenfor med REST-endepunktet for API-en som er konfigurert og klar til bruk.

Klikk på sluttpunktet, og nettleseren vil sende en forespørsel til din Lambda-funksjon og vise svaret.

Gratulerer! Du har også påberopt Lambda-funksjonen din. Ganske en prestasjon.

Hvem kan lære AWS Lambda

Det må være tydelig nå at AWS Lambda-funksjon krever litt kunnskap om tjenester, distribusjon av tjenester, forespørsler og svar. Dette er grunnleggende ting som enhver dataprogrammerer må vite for å lage webapplikasjoner. Hvis du ikke har tilstrekkelig kunnskap om dette emnet, anbefales det å få denne kunnskapen slik at problemfri koding i AWS Lambda er sikret.

AWS har også omfattende dokumentasjon på alle sine tjenester. Utforsk dokumentasjonen for en dypere forståelse av AWS verden.

Karriere i AWS Lambda

Det er ikke bare Lambda, men hele Amazon Web Services-sektoren blomstrer i dag. Det er etterspørsel etter eksperter på AWS-tjenester. AWS tilbyr også sertifiseringer som passer ditt kompetansenivå. Utforsk nettstedet AWS for mer informasjon om dette.

Konklusjon

Nå som du har forstått det grunnleggende i AWS Lambda-funksjoner, fortsett med å lage flere funksjoner og integrere med andre AWS-tjenester. Fortsett å spille og fortsett å lære. Jubel!

Anbefalte artikler

Dette har vært en guide til What is AWS Lambda. I denne opplæringen om AWS Lambda Function har vi forklart hvordan du konfigurerer og distribuerer API. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er AWS? | Hvordan virker det?
  2. Karriere i Azure | Utdanning | Karrierevei
  3. Guide til Cloud Computing Services
  4. Hva er alternativene til AWS?
  5. Komplett guide til leverandører av cloud computing-tjenester

Kategori: