Skillnaden mellan SOA och webbtjänster

Skillnaden mellan SOA och webbtjänster
Skillnaden mellan SOA och webbtjänster

Video: Skillnaden mellan SOA och webbtjänster

Video: Skillnaden mellan SOA och webbtjänster
Video: EFN förklarar konjunktur 2024, November
Anonim

SOA vs Web Services

Webbtjänster används för att bygga applikationer som kan skicka/ta emot meddelanden med SOAP över HTTP. En webbtjänst är ett publicerat paket med funktioner som erbjuds över webben. SOA är en uppsättning arkitektoniska koncept som används för utveckling och integration av tjänster. Webbtjänster kan användas för att implementera SOA. Men det är bara en enda metod för att realisera SOA-baserade applikationer.

Vad är webbtjänster?

En webbtjänst är en metod för kommunikation över nätverket. Enligt W3C är en webbtjänst ett system dedikerat för att stödja maskin-till-maskin-transaktioner över ett nätverk. Det är ett webb-API som beskrivs i WSDL (Web Service Description Language), och webbtjänster är vanligtvis fristående och självbeskrivande. Webbtjänster kan upptäckas med hjälp av UDDI-protokollet (Universal Description, Discovery and Integration). Genom att utbyta SOAP-meddelanden (Simple Object Access Protocol) vanligtvis över HTTP (med XML), kan andra system interagera med webbtjänster.

Webbtjänster används på flera sätt som RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) och REST (Representational State Transfer). Det finns två automatiserade designmetoder för att utveckla webbtjänster. Bottom-up-metoden handlar om att först skapa klasserna och sedan använda WSDL-genereringsverktyg för att komponera dessa klasser som webbtjänster. Top-down-metoden handlar om att definiera WSDL-specifikationerna och sedan använda kodgenereringsverktyg för att generera motsvarande klasser. Webbtjänster har två huvudsakliga användningsområden. De kan användas som återanvändbara applikationskomponenter och/eller för att koppla ihop webbapplikationer som körs på olika plattformar.

Vad är SOA?

SOA (Service-oriented architecture) är en uppsättning arkitektoniska koncept som används för utveckling och integration av tjänster. SOA handlar om distribuerad datoranvändning, där konsumenter konsumerar en uppsättning interoperabla tjänster. Flera konsumenter kan konsumera en enda tjänst och vice versa. Därför används SOA ofta för att integrera flera applikationer som använder olika plattformar. För att SOA ska fungera korrekt, bör tjänster vara löst kopplade till operativsystem och teknologier för underliggande applikationer. SOA-utvecklare skapar tjänster med hjälp av funktionsenheter och gör dem tillgängliga över internet. Webbtjänster kan användas för att implementera SOA-arkitektur. I så fall blir webbtjänster SOAs funktionalitetsenheter som är tillgängliga över internet. Webbtjänster kan användas av vem som helst utan att bry sig om plattformarna eller de programmeringsspråk som används för att utveckla dem. SOA bygger direkt på principen om tjänsteorientering, som talar om tjänster med enkelt gränssnitt som kan nås oberoende av användare utan att behöva oroa sig för själva plattformsimplementeringen av tjänsten.

Vad är skillnaden mellan SOA och webbtjänster?

Det finns några viktiga skillnader mellan webbtjänster och SOA. Webbtjänster definierar en webbteknologi som kan användas för att bygga applikationer som kan skicka/ta emot meddelanden med SOPA över HTTP. SOA är dock en arkitektonisk modell för att implementera löst kopplade tjänstebaserade applikationer. Webbtjänster kan användas för att implementera SOA-applikationer. Även om webbtjänstinställningen till SOA har blivit mycket populär, är det bara en enda metod för att implementera SOA. SOA kan implementeras med vilken annan tjänstebaserad teknik som helst (t.ex. CORBA och REST).

Rekommenderad: