ODMOR ili SOAP u okruženju izvornom za oblake

API-ji podataka temeljeni na oblaku ne samo da su poboljšali iskustvo u oblaku, već su i pružili način programerima i administratorima da integriraju radna opterećenja u oblak pomoću tih API-ja. Za većinu poduzeća API-ji dopuštaju razmjenu podataka kroz razne lokalne i aplikacije u oblaku. Oni također igraju važnu ulogu kako bi radna opterećenja platforme integrirali neprimjetno. Kako usvajanje oblaka nastavlja rasti, sve je veća potražnja za točkama integracije između aplikacija unutar i izvan oblačnog okruženja. Porast multicloud strategije zajedno s potrebom za poboljšanjem mogućnosti više oblaka povećali su ovisnost o API API okruženju. Ali koji je pristup bolji i kakvu podršku dobivate u svom oblačnom okruženju?

U kratkim crtama sapun

SOAP (skraćenica od Simple Object Access Protocol), stariji pristup, imao je industrijsku podršku koja se kretala od proizvodnih tvrtki poput IBM-a i Microsofta do implementatora usluga. Također je došao sa sveobuhvatnim, ali složenim standardom. Microsoftov tim koji je dizajnirao SOAP napravio ga je izuzetno fleksibilnim - kako bi mogao komunicirati putem privatnih mreža, interneta i e-pošte. Podržalo ga je i nekoliko standarda. Početna verzija SOAP-a bila je dio specifikacije koja je sadržavala i Univerzalni opis, otkrivanje i integraciju (UDDI) i Jezik za opis web usluga (WSDL).

SOAP u osnovi pruža omotnicu za slanje poruka web usluga. Sama arhitektura dizajnirana je da pomogne u izvođenju različitih operacija između softverskih programa. Komunikacija između programa obično se odvija putem zahtjeva utemeljenih na XML-u i HTTP odgovora. HTTP se uglavnom koristi protokol komunikacije, ali mogu se koristiti i drugi protokoli.

SOAP poruka sadrži neke obavezne dijelove, kao što su ENVELOPE, HEADER, BODY, i FAULTENVELOPEObjekt definira početak i kraj zahtjev XML poruka HEADERsadrži zaglavlje elementi biti obrađene od strane poslužitelja, a BODYsadrži preostali XML objekt koji sačinjava zahtjev. FAULTobjekt koristi bilo koje rukovanje pogreškama.

ODMOR

REST (Reprezentativni državni prijenos) obično se naziva arhitektonskim stilom, a ne protokolom koji se koristi za izgradnju web usluga. REST arhitektura omogućuje komunikaciju između dva softverska programa, pri čemu jedan program može zahtijevati i manipulirati resursima od drugog. ODMOR zahtjev za pristup resursima na ciljnoj program koristi HTTP glagoli: GET, POST, PUT, i DELETE. Ovi zahtjevi mogu koristiti format podataka, uključujući XML, HTML i JSON. JSON je najpoželjniji jer je najkompatibilniji i jednostavan za upotrebu. većina REST API-ja temelji se na URI-ima (Uniform Resource Identifier) ​​i specifični su za HTTP protokol. 

REST je pogodan za programere jer njegov jednostavniji stil olakšava primjenu i korištenje od SOAP-a. REST je manje opširan i manje se količine podataka šalje prilikom komunikacije između dviju krajnjih točaka.

Zašto sapun ili ostatak?

Iako je SOAP poput upotrebe omotnice koja u sebi sadrži puno podataka za obradu, REST se može smatrati razglednicom koja ima URI kao odredišnu adresu, lagana je i može se predmemorirati. REST se temelji na podacima i primarno se koristi za pristup resursu (URI) za određene podatke; SOAP je protokol koji se temelji na funkcijama. REST pruža fleksibilnost u odabiru formata podataka (običan tekst, HTML, XML ili JSON), dok SOAP koristi samo XML.

SOAP je pogodan za programe u kojima vam je potrebna viša razina sigurnosti. SOAP dolazi sa sigurnosnim značajkama na razini poduzeća koje podržava WS-Security, zajedno sa SSL podrškom. Ako želite razviti rješenje za mobilno bankarstvo, SOAP API-ji vjerojatno bi bili prva briga o sigurnosnim zahtjevima. SOAP također pruža logiku ponovnog pokušaja za zajamčeni uspjeh i pouzdanu komunikaciju. REST koristi HTTP i može otkloniti komunikacijske kvarove samo ponovnim pokušajem, no logika ponovnog pokušaja nije ugrađena u REST. SOAP pruža ugrađenu logiku ponovnog pokušaja.

Što se mijenja u okruženju izvornom za oblak?

Iz perspektive programera, ništa se zapravo ne mijenja u odabiru između REST ili SOAP, ali dizajniranje vaše usluge u okruženju izvornom za oblak uvažava perspektivu platforme. Dostupnost usluge i vrijeme odziva igraju presudnu ulogu u dizajniranju poslovnih usluga i matičnih aplikacija u oblaku. Sa sigurnosnog stajališta, WS-Security (Web Service Security) protokol, koji pruža sigurnost na razini poruka koristeći SOAP poruke, široko se primjenjuje u računalstvu u oblaku radi zaštite sigurnosti većine web usluga povezanih s računalstvom u oblaku. Ali WS-Security koristi SAOP elemente zaglavlja za prijenos sigurnosnih informacija. SOAP poruka je formata XML i obično je puno veća od stvarne poruke u binarnom formatu. To povećava vrijeme i obradu za komunikaciju i obradu podataka.To može biti argument rasprave za odabir REST naspram SOAP-a, ali postoji promjena sa SOAP-a na REST bez obzira na platformu na kojoj će se vaša aplikacija pokretati.

Krajem 2016. godine, Microsoft Azure dodao je SOAP prolaznu podršku za Azure API Management koji pomaže programerima da stvore proxy za svoje SOAP API-je na isti način na koji stvaraju proxy za REST / HTTP API-je. Koristeći SOAP prolaznu podršku, možete uvesti WSDL dokumente i stvoriti novi API proxy; proces pregledava sve SOAP akcije u dokumentu i učinkovito ih stvara u API završnim točkama. U budućoj verziji mogli bismo vidjeti značajku zatraženu za stvaranje REST prednjeg dijela pomoću SOAP pozadine.

Unutar AWS svijeta, većini AWS API-ja dostupni su samo putem REST-a i imaju ograničenu podršku za SOAP. EC2 resursi dostupni su putem REST ili Query API, dok je SOAP API za EC2 zastario od kraja 2015. Usluge poput Amazon S3 i RDS također podržavaju REST dok je SOAP podržan samo putem HTTPS-a; SOAP za HTTP je zastario. Amazon SQS više ne podržava SOAP. Iako se čini da REST vodi AWS API-je, Amazon API Gateway integrira se s AWS ekosustavom i pruža podršku stvaranju, upravljanju i postavljanju RESTful API-ja radi izlaganja pozadinskih HTTP / HTTPS krajnjih točaka, AWS Lambda funkcija i / ili drugih AWS usluga. API pristupnik također pomaže u pozivanju izloženih API metoda kroz prednje HTTP krajnje točke.

Sve više i više podrške naginje prema RESTful API-ima. Njegova jednostavnost s glagolskim operacijama čini ga pogodnim za programere. Kompatibilan je s većinom formata i jednostavan je za upotrebu. Ne postoji zalazak sunca ni za SOAP, ali REST će definitivno biti popularan među zajednicom programera.