Verschil tussen SOA en Web Services

Anonim

SOA vs Web Services

Webdiensten worden gebruikt om applicaties te bouwen die berichten kunnen verzenden / ontvangen via SOAP via HTTP. Een webservice is een gepubliceerd pakket van functionaliteit die via het web wordt aangeboden. SOA is een reeks architectonische concepten die worden gebruikt voor de ontwikkeling en integratie van diensten. Webdiensten kunnen worden gebruikt om SOA te implementeren. Maar het is slechts een enkele methode om SOA gebaseerde toepassingen te realiseren.

Wat zijn webdiensten?

Een webservice is een communicatiemethode over het netwerk. Volgens W3C is een webservice een systeem dat zich inzet voor machine-to-machine transacties via een netwerk. Het is een web-API die wordt beschreven in WSDL (Web Service Description Language), en webdiensten zijn meestal zelfstandig en zelf beschrijvend. Webdiensten kunnen worden ontdekt met behulp van UDDI (Universal Description, Discovery and Integration) protocol. Door het uitwisselen van SOAP (Simple Object Access Protocol) berichten, meestal via HTTP (met XML), kunnen andere systemen interageren met webdiensten.

Webdiensten worden op verschillende manieren gebruikt, zoals RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) en REST (Representative State Transfer). Er zijn twee geautomatiseerde ontwerpprocedures voor het ontwikkelen van webdiensten. De bottom-up benadering gaat ermee om eerst de lessen te creëren en vervolgens WSDL generatie tools te gebruiken om deze lessen op te maken als webdiensten. De top-down benadering heeft betrekking op het definiëren van de WSDL specificaties en vervolgens met behulp van code generatie tools om de bijbehorende klassen te genereren. Webdiensten hebben twee belangrijke toepassingen. Ze kunnen gebruikt worden als herbruikbare applicatie-componenten en / of aansluiten op webapplicaties die op verschillende platformen draaien.

Wat is SOA?

SOA (Service Oriented Architecture) is een reeks architectonische concepten die worden gebruikt voor de ontwikkeling en integratie van diensten. SOA behandelt gedistribueerde computers, waarbij consumenten een reeks interoperabele diensten verbruiken. Meerdere consumenten kunnen een enkele dienst verbruiken en vice versa. Daarom wordt SOA vaak gebruikt om meerdere toepassingen te integreren die verschillende platformen gebruiken. Om SOA goed te kunnen functioneren, dienen de services losweg gekoppeld te zijn aan besturingssystemen en de technologieën van onderliggende applicaties. SOA-ontwikkelaars creëren diensten met behulp van eenheden van functionaliteit en maken ze beschikbaar via internet. Webdiensten kunnen worden gebruikt om SOA-architectuur uit te voeren. In dat geval worden webdiensten de units van functionaliteit van SOA toegankelijk via internet. Webdiensten kunnen door iedereen worden gebruikt zonder zich zorgen te maken over de platforms of de programmeertalen die gebruikt worden om ze te ontwikkelen. SOA is rechtstreeks gebouwd op het principe van service-oriëntatie, waarin wordt gesproken over diensten met een eenvoudige interface die onafhankelijk door de gebruikers kan worden geopend zonder zich zorgen te maken over de daadwerkelijke implementatie van het platform.

Wat is het verschil tussen SOA en Web Services?

Er zijn een aantal belangrijke verschillen tussen webdiensten en SOA. Webdiensten definiëren een webtechnologie die kan worden gebruikt om applicaties te bouwen die berichten kunnen verzenden / ontvangen via SOPA via HTTP. SOA is echter een architectonisch model voor het implementeren van los gekoppelde dienstgebaseerde applicaties. Webdiensten kunnen worden gebruikt om SOA-toepassingen te implementeren. Hoewel de webservice-aanpak van SOA erg populair is geworden, is het slechts een enkele methode om SOA te implementeren. SOA kan worden geïmplementeerd met behulp van elke andere service-based technologie (bijvoorbeeld CORBA en REST).