Rozdíl mezi SOA a webovými službami

SOA vs. webové služby

Webové služby se používají k vytváření aplikací, které mohou odesílat / přijímat zprávy pomocí protokolu SOAP přes HTTP. Webová služba je publikovaný balíček funkcí nabízených přes web. SOA je soubor architektonických konceptů používaných pro vývoj a integraci služeb. K implementaci SOA lze použít webové služby. Je to však pouze jediný způsob realizace aplikací založených na SOA.

Co jsou webové služby?

Webová služba je způsob komunikace po síti. Podle W3C je webová služba systém určený pro podporu transakcí mezi stroji v síti. Je to webové rozhraní API popsané v jazyce WSDL (Web Service Description Language) a webové služby jsou obvykle samostatné a samy popisující. Webové služby lze zjistit pomocí protokolu UDDI (Universal Description, Discovery and Integration). Výměnou zpráv SOAP (Simple Object Access Protocol) obvykle přes HTTP (s XML) mohou ostatní systémy interagovat s webovými službami.

Webové služby se používají mnoha způsoby, jako jsou RPC (Remote Procedure Call), SOA (Service Oriented Architecture) a REST (Representational State Transfer). Existují dvě automatizované metodiky návrhu pro vývoj webových služeb. Přístup zdola nahoru se zabývá nejprve vytvořením tříd a poté pomocí nástrojů pro generování WSDL k vytvoření těchto tříd jako webových služeb. Přístup shora dolů se zabývá definicí specifikací WSDL a poté pomocí nástrojů pro generování kódu pro vygenerování odpovídajících tříd. Webové služby mají dvě hlavní použití. Mohou být použity jako opakovaně použitelné komponenty aplikací a / nebo pro připojení webových aplikací běžících na různých platformách.

Co je SOA?

SOA (Service-Oriented Architecture) je sada architektonických konceptů používaných pro vývoj a integraci služeb. SOA se zabývá distribuovanou výpočetní technikou, ve které spotřebitelé spotřebují sadu interoperabilních služeb. Více zákazníků může konzumovat jednu službu a naopak. SOA se proto často používá k integraci více aplikací, které používají různé platformy. Aby SOA správně fungoval, měly by být služby volně propojeny s operačními systémy a technologiemi základních aplikací. Vývojáři SOA vytvářejí služby pomocí jednotek funkčnosti a zpřístupňují je přes internet. Webové služby lze použít k implementaci architektury SOA. V takovém případě se webové služby stávají jednotkami funkčnosti SOA přístupné přes internet. Webové služby může používat kdokoli bez obav o platformy nebo programovací jazyky používané pro jejich vývoj. SOA je postaven přímo na principu orientace na služby, který hovoří o službách s jednoduchým rozhraním, ke kterému mohou uživatelé přistupovat nezávisle, aniž by se museli bát skutečné implementace služby na platformě..

Jaký je rozdíl mezi SOA a webovými službami?

Mezi webovými službami a SOA existují některé klíčové rozdíly. Webové služby definují webovou technologii, kterou lze použít k vytváření aplikací, které mohou odesílat / přijímat zprávy pomocí protokolu SOPA přes HTTP. SOA je však architektonický model pro implementaci volně spojených aplikací založených na službách. Webové služby lze použít k implementaci aplikací SOA. I když se přístup webových služeb k SOA stal velmi populárním, jedná se pouze o jediný způsob implementace SOA. SOA lze implementovat pomocí jakékoli jiné technologie založené na službách (např. CORBA a REST).