Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla · Oppitunti

Lambdan suoritusympäristö ja käsittelijä

Tutustukaa Lambdan eri suoritusympäristöihin ja ymmärtäkää, miten handler-funktio käsittelee tapahtumia ja palauttaa vastauksia

Oppitunti 1/411 vaihetta

Lambdan suoritusympäristö ja käsittelijä on ilmainen Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-kurssilla on yhteensä 4 oppituntia.

Lambdan suoritusympäristö

Kun koodisi suoritetaan AWS Lambdassa, se tarvitsee ympäristön. Tätä kutsutaan runtimeksi.

Runtime tarkoittaa tiettyä käyttöjärjestelmää, ohjelmointikielen versiota ja tarvittavia kirjastoja, joissa Lambda-funktion koodi isännöidään ja suoritetaan.

Mitä runtime tarjoaa?

Lambda-runtime tarjoaa kaiken, mitä koodisi tarvitsee suorittamiseen.

  • Kielituki: Se sisältää valitsemasi kielen tulkin tai virtuaalikoneen (esimerkiksi Python, Node.js tai Java).
  • Käyttöjärjestelmä: Se toimii suojatussa, hallitussa käyttöjärjestelmässä (yleensä jossakin Linux-versiossa).
  • AWS SDK: Se sisältää valmiiksi kyseisen kielen AWS SDK:n, joten muiden AWS-palveluiden käyttö on helppoa.

Yleiset vaihtoehdot koodillesi

AWS Lambda tukee runtimeina monia suosittuja ohjelmointikieliä. Valitse projektiisi ja tiimisi osaamiseen parhaiten sopiva vaihtoehto.

  • Python: Valitaan usein sen yksinkertaisuuden ja tietojenkäsittelyominaisuuksien vuoksi.
  • Node.js: Sopii erinomaisesti tapahtumapohjaisiin ja ei-estäviin sovelluksiin.
  • Java: Suosittu laajamittaisissa yrityssovelluksissa.
  • Go: Tunnetaan hyvästä suorituskyvystä ja samanaikaisuuden tuesta.
  • .NET ja Ruby: Saatavilla myös tiettyihin käyttötapauksiin.

Miksi runtimen valinnalla on merkitystä

Oikean runtimen valinta on tärkeää. Se voi vaikuttaa seuraaviin asioihin:

  • Suorituskyky: Jotkin runtimet käynnistyvät nopeammin (niillä on lyhyempi "kylmäkäynnistysaika") tai suorittavat koodia tehokkaammin.
  • Kehittäjäkokemus: Tiimin tuttuus ohjelmointikielen kanssa nopeuttaa kehitystä.
  • Ekosysteemi: Käytettävissäsi on tiettyjä kirjastoja ja frameworkeja.
  • Kustannukset: Vaikka vaikutus on pieni, suorituksen kesto voi vaikuttaa laskutukseen.

Koodisi aloituspiste: handler

Handler-funktio on Lambda-funktiosi tietty koodiosa, jonka AWS Lambda kutsuu, kun funktiosi käynnistetään.

Se vastaa perinteisen ohjelman main-metodia, mutta on suunniteltu erityisesti AWS-palveluiden tapahtumien vastaanottamiseen ja käsittelyyn.

Python-handlerin rakenne

Pythonissa yleinen handler-funktio näyttää tältä. Se ottaa kaksi argumenttia:

  • event: Sanakirja, joka sisältää funktion käynnistäneen tapahtuman tiedot.
  • context: Objekti, joka tarjoaa tietoja kutsusta, funktiosta ja suoritusympäristöstä.
def my_handler(event, context):
    # Your code goes here
    pass

Ensimmäinen handler-esimerkkisi

Tarkastellaan yksinkertaista Python-handleria. Se tulostaa saapuvan tapahtuman ja joitakin kontekstitietoja ja palauttaa sitten perusvastauksen. Tämä funktio on kokonainen ohjelma.

import json

def lambda_handler(event, context):
    print("Received event:")
    print(json.dumps(event, indent=2))

    print("Function Name:", context.function_name)
    print("Memory Limit:", context.memory_limit_in_mb)

    response = {
        "statusCode": 200,
        "body": json.dumps("Hello from Lambda!")
    }
    return response

Tapahtumasta suoritukseen

Kun AWS-palvelu, kuten API Gateway tai S3, käynnistää Lambdan, se lähettää tapahtuman.

Lambda-palvelu tekee sitten seuraavat toimet:

  1. Käynnistää runtime-ympäristön, jos se ei ole jo valmiiksi lämmin.
  2. Lataa koodisi.
  3. Kutsuu handler-funktiotasi ja välittää sille event- ja context-objektit.

Vastauksen lähettäminen takaisin

Kun handler on käsitellyt tapahtuman, se palauttaa vastauksen. Tämä vastaus on usein JSON-objekti.

Vastauksen rakenne voi vaihdella sen mukaan, miten Lambda käynnistettiin. HTTP-pyynnöissä, esimerkiksi API Gatewaysta tulevissa pyynnöissä, odotetaan tiettyä JSON-rakennetta, joka sisältää statusCode- ja body-kentät.

Handlerin allekirjoituksen ymmärtäminen

Tarkastele tyypillistä Python-Lambda-handler-funktiota. Mikä seuraavista kuvaa parhaiten sen kahden pääparametrin tarkoitusta?

Kertaus: runtimet ja handlerit

Tässä oppitunnissa olet oppinut AWS Lambda -funktion keskeisistä komponenteista:

  • Runtimet: Koodisi suoritusympäristö, joka tarjoaa kielituen ja tarvittavat kirjastot.
  • Handlerit: Koodisi tietty funktio, jonka AWS Lambda kutsuu ja jolle välitetään tapahtumatiedot ja kontekstitiedot.

Näiden käsitteiden ymmärtäminen on olennaista vankkojen palvelimettomien sovellusten rakentamisessa!

Aloita maksutta

Opi Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Lambdan suoritusympäristö ja käsittelijä” ilmainen?

Kyllä – oppitunnin ”Lambdan suoritusympäristö ja käsittelijä” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-kurssin, päivitä CoddyKit PROhon. Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Lambdan suoritusympäristö ja käsittelijä”?

Tutustukaa Lambdan eri suoritusympäristöihin ja ymmärtäkää, miten handler-funktio käsittelee tapahtumia ja palauttaa vastauksia Harjoittelet Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.

Kuinka kauan ”Lambdan suoritusympäristö ja käsittelijä”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppitunnilla?

Kyllä. Jokainen Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Lambdan suoritusympäristö ja käsittelijä
  2. Ympäristömuuttujat ja Layer-kerrokset
  3. Lokitus ja valvonta CloudWatchilla
  4. Virheenkäsittely, retry-yritykset ja dead-letter-jonot
← Takaisin: Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla