SOA vs web usluge
Web usluge koriste se za izradu aplikacija koje mogu slati / primati poruke pomoću SOAP-a preko HTTP-a. Web usluga je paket funkcionalnosti koji se objavljuje na internetu. SOA je skup arhitektonskih koncepata koji se koriste za razvoj i integraciju usluga. Web-usluge mogu se koristiti za implementaciju SOA-e. Ali to je samo jedna metoda realizacije SOA aplikacija.
Što su web usluge?
Web usluga je metoda komunikacije putem mreže. Prema W3C, web usluga je sustav posvećen podršci transakcija stroj-stroj preko mreže. To je Web API opisan u WSDL (Jezik opisa web usluga), a web usluge obično su samostalne i samoopisujuće. Web usluge mogu se otkriti pomoću UDDI (Universal Description, Discovery and Integration) protokola. Razmjenom SOAP (Simple Object Access Protocol) poruka uobičajeno putem HTTP-a (s XML), ostali sustavi mogu komunicirati s web uslugama.
Web usluge upotrebljavaju se na brojne načine kao što su RPC (pozivi na daljinski postupak), SOA (arhitektura usmjerena na uslugu) i REST (prijenos države predstavništva). Postoje dvije automatizirane metodologije dizajniranja za razvoj web usluga. Pristup odozdo prema gore bavi se prvo stvaranjem klasa, a zatim upotrebom alata za generiranje WSDL-a za sastavljanje ovih klasa kao web usluga. Pristup odozgo prema dolje bavi se definiranjem WSDL specifikacija i upotrebom alata za generiranje koda za generiranje odgovarajućih klasa. Web usluge imaju dvije glavne upotrebe. Mogu se koristiti kao komponente aplikacija za višekratnu uporabu i / ili za povezivanje web aplikacija koje se izvode na različitim platformama.
Što je SOA?
SOA (servisno orijentirana arhitektura) je skup arhitektonskih koncepata koji se koriste za razvoj i integraciju usluga. SOA se bavi distribuiranim računanjem, u kojem potrošači konzumiraju niz interoperabilnih usluga. Više potrošača može konzumirati jednu uslugu i obrnuto. Stoga se SOA često koristi za integriranje više aplikacija koje koriste različite platforme. Da bi SOA pravilno radila, usluge trebaju biti slabo povezane s operativnim sustavima i tehnologijama temeljnih aplikacija. Programeri SOA-e stvaraju usluge pomoću jedinica funkcionalnosti i stavljaju ih na raspolaganje putem interneta. Web usluge mogu se koristiti za implementaciju SOA arhitekture. U tom slučaju web usluge postaju jedinice funkcionalnosti SOA dostupne putem interneta. Web usluge može svatko koristiti bez brige o platformi ili programskim jezicima koji se koriste za njihovo razvijanje. SOA je izravno izgrađena na principu orijentacije na uslugu, koji govori o uslugama s jednostavnim sučeljem koje korisnici mogu samostalno pristupiti bez brige o stvarnoj implementaciji usluge na platformi..
Koja je razlika između SOA-e i Web Services?
Postoje neke ključne razlike između web usluga i SOA. Web usluge definiraju web tehnologiju koja se može koristiti za izradu aplikacija koje mogu slati / primati poruke putem SOPA putem HTTP-a. Međutim, SOA je arhitektonski model za implementaciju lagano povezanih aplikacija temeljenih na uslugama. Web usluge mogu se koristiti za implementaciju SOA aplikacija. Iako je pristup web usluga SOA-i postao vrlo popularan, to je samo jedinstvena metoda primjene SOA-e. SOA se može implementirati pomoću bilo koje druge usluge temeljene na uslugama (npr. CORBA i REST).