En introduksjon til AWS Lambda for nybegynnere

La oss lære det grunnleggende om AWS Lambda og hvordan du kjører en funksjon trinn for trinn.

Introduksjon

Når du bygger applikasjoner, vil du at de skal levere en utmerket brukeropplevelse. For å få magien til å skje, trenger applikasjonen din en backend-kode som kjører som svar på hendelser.

Men å administrere infrastrukturen for å være vert for og utføre backend-kode krever at du størrelser, sørger for og skalerer en haug med servere, administrerer operativsystemoppdateringer, bruker sikkerhetsoppdateringer og deretter overvåker all denne infrastrukturen for ytelse og tilgjengelighet.

Ville det ikke vært fint om du kunne fokusere på å bygge flotte applikasjoner uten å måtte bekymre deg for infrastrukturen deres? Det er der AWS Lambda kommer inn i bildet.

Hva er AWS Lambda?

AWS Lambda er en serverløs databehandlingstjeneste som lar deg kjøre koden din uten å bekymre deg for å klargjøre eller administrere noen server. Du kan kjøre applikasjonen eller backend-tjenesten din ved å bruke AWS Lambda uten administrasjon. Bare last opp koden din på Lambda, og den vil kjøre koden din, til og med skalere infrastrukturen med høy tilgjengelighet.

Koden du kjører på AWS Lambda kalles en lambda-funksjon. For øyeblikket støtter den følgende programmeringsspråk:

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

Det gir også en runtime API som kan brukes til å kjøre funksjoner skrevet på andre (native) programmeringsspråk.

  10 Premium WordPress-hosting for nettsted med mye trafikk

For å jobbe med AWS Lambda er det kun én forutsetning; du bør ha en konto på AWS hvor du kan få tilgang til AWS-administrasjonskonsollen.

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

AWS Lambda-funksjoner

Nedenfor er noen av de viktige funksjonene som tilbys av AWS Lambda:

  • AWS Lambda skalerer enkelt infrastrukturen uten ekstra konfigurasjon. Det reduserer det operative arbeidet.
  • Den tilbyr flere alternativer som AWS S3, CloudWatch, DynamoDB, API Gateway, Kinesis, CodeCommit og mange flere for å utløse en hendelse.
  • Du trenger ikke å investere på forhånd. Du betaler kun for minnet som brukes av lambda-funksjonen og minimal kostnad på antall forespørsler, derav kostnadseffektivt.
  • AWS Lambda er sikker. Den bruker AWS IAM til å definere alle rollene og sikkerhetspolicyene.
  • Den tilbyr feiltoleranse for både tjenester som kjører koden og funksjonen. Du trenger ikke å bekymre deg for at søknaden er nede.

AWS Lambda Priser

AWS Lambda-priser avhenger av varigheten og minnet som brukes av lambda-funksjonen skrevet av deg. Det maksimale du kan tildele er 3008 MB minne til en lambda-funksjon i trinn på 64 MB. Nedenfor er en pristabell med alle minneplatene i 100 millisekunder.

Hvordan fungerer AWS Lambda?

  • Først lager du en funksjon og legger til grunnleggende informasjon til den, som programmeringsspråket som skal brukes i funksjonen.
  • Deretter skriver du koden din på lambda-editoren eller laster den opp på et støttet programmeringsspråk i en zip-fil.
  • Når lambdakoden er lastet opp, håndterer tjenesten all kapasitetsskalering, patching og administrasjon av infrastrukturen.
  • For å kjøre koden må du utløse lambda-funksjonen med en ekstern AWS-tjeneste, som kan påkalle lambda-funksjonen. Det kan for eksempel være en S3-bøtte.
  • I løpet av noen få sekunder vil lambda være klar til å utløse funksjonen din automatisk når en hendelse inntreffer. AWS Lambda kjører koden din når triggerhendelsen kalles. Den sørger for å administrere og overvåke serverne for deg.
  • Hvis funksjonen din krever mye prosessorkraft, vil den velge en instanstype som har mer prosessorkraft og RAM, eller hvis lambdakoden din bare kjører i to sekunder, vil den velge lavest mulig instans, noe som sparer penger og tid .
  Hva betyr "GG" og hvordan bruker du det?

Så det er slik AWS Lambda fungerer internt. La meg vise deg en demo på AWS Lambda.

Opprette AWS Lambda-funksjon

Jeg skal lage et veldig enkelt spill ved å bruke lambda-funksjonen i Node.js for denne artikkelen. Jeg vil lage en lambda-funksjon for å kaste en terning, generere et tilfeldig tall mellom 1 og 6 og skrive det ut.

  • Gå til AWS-administrasjonskonsollen, og i søkefeltet skriv Lambda, klikk på Lambda.

  • Funksjonsvindu vises, klikk på Opprett funksjon.

  • Du vil få ulike alternativer for å lage en funksjon med deres forklaring. Siden jeg lager det fra bunnen av, vil jeg velge Forfatter fra bunnen av.

  • Etter det må du fylle ut nødvendig informasjon for denne lambdafunksjonen. Skriv inn funksjonsnavnet og velg Node.js-versjonen som du vil bruke for denne funksjonen.
  • Du må også velge en utførende rolle. Siden jeg ikke har noen eksisterende rolle definert i AWS-kontoen min, vil jeg gå videre og velge opprett et nytt rollealternativ. Klikk på Opprett funksjon.
  11 Brute-force angrepsverktøy for penetrasjonstest

  • Du vil få en suksessmelding om at unction ble opprettet. Klikk på Designer-vinduet for å minimere det.

  • Neste vil være funksjonskodevinduet.
  • Legg inn koden nevnt nedenfor i editoren. Du kan også laste opp koden ved å bruke zip-filen, men jeg bruker den interne AWS-kodeeditoren.

  • Det er en enkel kode som bare tar tall fra 1 til 6 og bruker en tilfeldig matematisk funksjon for å generere et tall tilfeldig og skrive det ut når funksjonen kalles.
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;
};
  • Klikk nå på Test-knappen øverst til høyre. Du vil få en popup for å konfigurere en testhendelse, angi et hendelsesnavn og klikke på konfigurer.

  • Klikk nå på Lagre og deretter Test.

I utførelsesresultatet vil du se utdataene til funksjonslogikken vi nettopp skrev. Den skrives ut – Resultatet av terningkast er 2.

  • Rull opp og klikk på detaljerte utførelsesresultater for å få et fullstendig sammendrag av denne lambdafunksjonen med forventet utgang. Detaljer som forespørsels-ID, varighet, fakturert varighet, konfigurerte ressurser osv. med loggutgang er også tilgjengelig.

  • Klikk på overvåkingsfanen for å visualisere skyklokkeloggene og lambdafunksjonsytelsen over en definert tid.

  • Hvis du kommer inn i loggene som ble opprettet av CloudWatch, kan du se på detaljene om hva som skjedde da lambda-funksjonen kjørte, som ble overvåket av CloudWatch.

Konklusjon

Komme i gang med Lambda er veldig enkelt. Hvis bedriftsapplikasjonen din krever å kjøre backend-kode, kan du vurdere å bruke en serverløs plattform som AWS Lambda.

Likte du å lese artikkelen? Hva med å dele med verden?