Amazon API Gateway tutvustus AWS Lambda abil

Amazon API Gateway tutvustus AWS Lambda abil

Allikasõlm: 1860150

Sissejuhatus

Mis on API?

Lihtsamalt öeldes on API sõnumitooja; mõistame seda mõne näitega. Oletame, et olete näljane ja teil on vaja kodus midagi süüa teha. Kui soovite nuudleid teha, võtke lihtsalt koostisosad kapist välja, pange pliit põlema ja valmistage see ise. See on programm, mis teeb midagi ise oma ressurssidega. Ütle aga, et tahad pitsat – sul pole koostisosi ja sinu koduahi ei ole tegelikult eriti sobiv mõnusa krõbeda kooriku tegemiseks. Nii et lähete hoopis pitsakohta. Kuid erinevalt kodust ei saa te lihtsalt kööki minna ja nende koostisosi pitsa valmistamiseks kasutama hakata. Nad ei taha, et teie räpased käed kogu nende asjadele peale jääksid! Mida sa siis teed? Tuleb minna letti ja teha tellimus – seal on menüü, kus on kirjas, milliseid pitsasid saab tellida ja milliseid lisandeid või muid valikuid valida. See on API.

Rakenduse programmeerimisliides (API) on reeglite kogum, mis määrab, kuidas kaks tarkvaraprogrammi peaksid omavahel suhtlema.

API võimaldab ühel tarkvaraprogrammil pääseda juurde teise tarkvaraprogrammi funktsioonidele. Näiteks kui teil on tarkvaraprogramm, mis peab andmeid Internetist hankima, saab see kasutada API-d, et nõuda neid andmeid serverist. Seejärel vastab server nõutud andmetega ja tarkvaraprogramm saab neid vastavalt vajadusele kasutada.

API-sid kasutatakse selleks, et võimaldada erinevatel tarkvaraprogrammidel omavahel suhelda ning andmeid ja funktsioone jagada. Need on tänapäevase tarkvaraarenduse oluline osa, kuna võimaldavad erinevatel süsteemidel koos töötada ning luua keerukamaid ja võimsamaid tarkvararakendusi.

HTTP API-d

HTTP API on API tüüp, mis kasutab andmete saatmiseks ja vastuvõtmiseks HTTP-protokolli. See võimaldab tarkvaraprogrammidel andmeid saata ja vastu võtta HTTP päringute ja vastuste abil. Need päringud ja vastused võivad olla erinevates vormingutes, nagu lihttekst, JSON või XML. Neid kasutatakse tavaliselt paljudes rakendustes, sealhulgas veebirakendustes, mobiilirakendustes ja mikroteenustes. Need API-d on suhteliselt odavamad kui REST API-d ja neil on vähem funktsioone kui hilisematel.

REST API-d

REST API on API tüüp, mis järgib arhitektuuripõhimõtteid, mida nimetatakse REST-iks (esinduslik oleku ülekanne). REST on tarkvaraarhitektuuri stiil, mis määratleb veebi API-de loomise piirangute komplekti.

Olekupõhised API-d

Olekupõhine API on API, mis säilitab teavet iga kliendipäringu kohta ja kasutab seda teavet järgnevate päringute töötlemiseks. See tähendab, et API salvestab serveripoolse seansi iga päringu andmed (nt päringu parameetrid). Neid andmeid kasutatakse seejärel sama kliendi järgnevate päringute töötlemiseks.

Riigita API-d

Seevastu olekuta API ei säilita teavet klientide päringute kohta. See töötleb iga päringut iseseisvalt, ilma eelnevate päringute kohta andmeid salvestamata. See tähendab, et API ei halda serveripoolset seanssi ega kasuta eelmiste päringute andmeid järgnevate päringute töötlemiseks.

Peamised erinevused olekuga ja olekuta API-de vahel

Allpool on mõned peamised erinevused olekuga ja olekuta API-de vahel.

SEADUSLIKUD API-d

KOOSKONNATA API-d

1. Nõua serveripoolset seanssi kliendi päringute andmete salvestamiseks 1. Ärge nõudke kliendipäringute andmete salvestamiseks serveripoolset seanssi
2. Need võivad mõnikord olla aeglasemad kui olekuta API-d, kuna need nõuavad ja salvestavad andmeid, mis võtab aega. 2. Riigita API-d on kiiremad, kuna need ei nõua ega salvesta päringute andmeid.
3. Olekupõhiseid API-sid ei ole lihtne skaleerida  3. Lihtsam skaleerida, kuna nad ei pea säilitama andmeid varasemate päringute kohta.
4. Üldiselt peetakse neid vähem turvaliseks kui olekuta API-sid 4. Neid peetakse üldiselt turvalisemaks.

Mis on Amazon API Gateway?

Amazon API Gateway on AWS-teenus, mida kasutatakse nii olekuga (veebipesa) kui ka olekuta (HTTP ja REST) ​​API-de loomiseks, hooldamiseks ja jälgimiseks. Saame kasutada neid API-sid juurdepääsuks:

  1. Mis tahes AWS-teenus
  2. AWS-i pilve salvestatud andmed (nt S3 ämber)
  3. Kõik muud veebiteenused.

Kui olete API-arendaja, saate hõlpsasti teha oma API-sid ka kolmandate osapoolte arendajatele.

AWS API Gateway kasutajaid on peamiselt kahte tüüpi.

  1. i) API arendajad, kes loovad ja juurutavad API, et võimaldada API Gateway vajalikke funktsioone
  2. ii) Rakenduste arendajad, kes on API arendaja kliendid.

Amazon API lüüsi arhitektuur

arhitektuur

See arhitektuur illustreerib, kuidas serverita rakendusi saab luua järjepideva ja integreeritud arendajakogemusega. API Gateway tegeleb lõppkasutajatest andmekeskusteni kõigi seotud ülesannetega, nagu tuhandete samaaegsete kõnede vastuvõtmine ja töötlemine, liikluse haldamine, autoriseerimine, jälgimine, juurdepääsu kontroll jne.

Amazon API lüüsi funktsioonid

  1. See toetab nii olekuga kui ka olekuta API-sid. (Näited: Websocket, HTTP ja REST).
  2. Võimsate autentimismehhanismide hulka kuuluvad AWS-i identiteet, juurdepääsuhalduspoliitikad ja lambda autoriseerija.
  3. Arendajaportaal, kus API-de arendajad saavad oma API-sid avaldada.
  4. CloudWatchi käivitamine ja juurdepääsu logimine, sealhulgas häirete seadistamise võimalus.
  5. Integreerimine teiste AWS-teenustega, näiteks AWS Lambda ja AWS Kinesis.
  6. Integratsiooni AWS WAF-iga kasutatakse kaitseks veebi ärakasutamise eest ning AWS-i röntgenikiirgust kasutatakse jõudluse latentsuste mõistmiseks ja rõhutamiseks.

Amazon API Gatewayga alustamine

Nüüd loome serverita API. Serverita API-s saame keskenduda oma rakendustele, selle asemel, et kulutada aega serverite haldamisele. See toimib järgmiselt:

  • API kutsub välja klient
  • API saadab päringu lambdale
  • Lambda täidab lambda funktsiooni ja saadab tulemuse API-le tagasi
  • Pärast lambdalt tulemuse saamist vastab API kliendile

http api

1. samm – looge lambda funktsioon

Lambda funktsiooni kasutatakse meie API taustaprogrammi jaoks. Lambda käivitab koodi ainult siis, kui see on vajalik. Samuti skaleerub see automaatselt mõnest taotlusest päevas tuhande päringuni sekundis.

luua lambada funktsioon

Lambda funktsiooni loomine:

1) Minge lambda konsooli aadressil https://console.aws.amazon.com/lambda

2) Klõpsake nuppu Loo funktsioon.

3) Sisestage funktsiooni nimeks "my-function".

4) Valige käitusajaks Python 3.9.

5) Selle funktsiooni jaoks ei pea me vahekaardil Load ja täpsemad sätted midagi muutma, kuna vaikeõigused on selle demonstratsiooni jaoks piisavad.

4) Klõpsake nuppu Loo funktsioon.

2. SAMM – HTTP API loomine

Amazon API

HTTP API pakub teie Lambda funktsioonile HTTP lõpp-punkti. See toimib järgmiselt:

  • Klient esitab päringu HTTP API-le
  • API käivitab lambda, mis seejärel täidab lambda funktsiooni
  • Lambda saadab tulemuse API-le
  • API vastab kliendile saadud vastusega

HTTP API loomise sammud

1) Külastage API Gateway konsooli aadressil https://console.aws.amazon.com/apigateway

2) Esimese HTTP API loomiseks klõpsake käsul Ehita

3) Klõpsake integreerimiseks nuppu Lisa integratsioon

4) Valige lambda.

5) Sisestage oma lambda-funktsioon minu-funktsioon.

6) API nime jaoks sisestage my-http-api.

7) Klõpsake nuppu Edasi.

8) Vaadake üle enda jaoks loodud marsruut ja seejärel valige Edasi.

9) Vaadake enda jaoks loodud etapp üle ja seejärel valige Edasi.

10) Klõpsake nuppu Loo.

3. SAMM Testige oma API-t –

Järgmiseks peame testima oma API-t, et veenduda selle töös. Selleks kasutame oma API käivitamiseks veebibrauserit.

Amazon API

Meie API testimiseks

  1. Minge API Gateway konsooli aadressil https://console.aws.amazon.com/apigateway
  2. Valige oma API.
  3. Märkige üles oma API kutse URL. (vaata ülalt pilti)
  4. Kopeerige oma API kutsumise URL ja kleepige see veebibrauserisse. Lambda funktsiooni kutsumiseks ühendage väljakutsumis-URL ja lambda-funktsiooni nimi. API Gateway konsool loob marsruudi, kasutades vaikimisi teie Lambda-funktsiooni nime "minu-funktsioon". 

    Täielik URL peaks välja nägema selline: https://abcdef123.execute-api.us-east-2.amazonaws.com/my-function. Kui laadite selle URL-i, saadab teie brauser API-le GET-päringu

  1. Peaksite nägema teksti "Tere lambdast!" oma brauseris. Seega on teie API vastus kinnitatud.

Amazon API

Järeldus

Oleme loonud oma esimese HTTP API, kasutades Amazon API Gateway ja AWS Lambda. Lisaks saame uurida sama erinevaid kasutusjuhtumeid ja samamoodi saame luua ka REST API, mis pakub rohkem funktsioone.

Kas teile meeldis see artikkel? Rääkige meile oma mõtted allolevas kommentaaris. Samuti ärge unustage mainida, millist artiklit soovite järgmisena lugeda.

Ajatempel:

Veel alates Analüütika Vidhya