Web Services - Merkmale

Webdienste weisen die folgenden besonderen Verhaltensmerkmale auf:

XML-basiert

Webdienste verwenden XML auf der Ebene der Datendarstellung und des Datentransports. Durch die Verwendung von XML werden Netzwerk-, Betriebssystem- oder Plattformbindungen vermieden. Auf Webdiensten basierende Anwendungen sind auf ihrer Kernebene in hohem Maße interoperabel.

Locker verbunden

Ein Verbraucher eines Webdienstes ist nicht direkt an diesen Webdienst gebunden. Die Webdienstschnittstelle kann sich im Laufe der Zeit ändern, ohne die Fähigkeit des Kunden zur Interaktion mit dem Dienst zu beeinträchtigen. Ein eng gekoppeltes System impliziert, dass die Client- und Serverlogik eng miteinander verbunden sind, was bedeutet, dass bei einer Änderung einer Schnittstelle die andere aktualisiert werden muss. Durch die Verwendung einer lose gekoppelten Architektur werden Softwaresysteme in der Regel leichter verwaltet und können einfacher zwischen verschiedenen Systemen integriert werden.

Grobkörnig

Objektorientierte Technologien wie Java stellen ihre Dienste durch individuelle Methoden zur Verfügung. Eine einzelne Methode ist zu fein, um auf Unternehmensebene nützliche Funktionen bereitzustellen. Um ein Java-Programm von Grund auf neu zu erstellen, müssen mehrere feinkörnige Methoden erstellt werden, die dann zu einem grobkörnigen Dienst zusammengesetzt werden, der entweder von einem Client oder einem anderen Dienst verwendet wird.

Unternehmen und die von ihnen bereitgestellten Schnittstellen sollten grobkörnig sein. Die Webdiensttechnologie bietet eine natürliche Möglichkeit, grobkörnige Dienste zu definieren, die auf die richtige Menge an Geschäftslogik zugreifen.

Fähigkeit, synchron oder asynchron zu sein

Synchronizität bezieht sich auf die Bindung des Clients an die Ausführung des Dienstes. Bei synchronen Aufrufen blockiert der Client und wartet, bis der Dienst seinen Vorgang abgeschlossen hat, bevor er fortfährt. Durch asynchrone Operationen kann ein Client einen Dienst aufrufen und dann andere Funktionen ausführen.

Asynchrone Clients rufen ihr Ergebnis zu einem späteren Zeitpunkt ab, während synchrone Clients ihr Ergebnis nach Abschluss des Dienstes erhalten. Die asynchrone Fähigkeit ist ein Schlüsselfaktor für die Ermöglichung lose gekoppelter Systeme.

Unterstützt Remote Procedure Calls (RPCs)

Mithilfe von Webdiensten können Clients Prozeduren, Funktionen und Methoden für Remoteobjekte mithilfe eines XML-basierten Protokolls aufrufen. Remote-Prozeduren legen Eingabe- und Ausgabeparameter offen, die ein Webdienst unterstützen muss.

Die Entwicklung von Komponenten durch Enterprise JavaBeans (EJBs) und .NET Components ist in den letzten Jahren zunehmend Teil von Architekturen und Unternehmensbereitstellungen geworden. Beide Technologien sind über eine Vielzahl von RPC-Mechanismen verteilt und zugänglich.

Ein Webdienst unterstützt RPC, indem er eigene Dienste bereitstellt, die denen einer herkömmlichen Komponente entsprechen, oder indem eingehende Aufrufe in einen Aufruf einer EJB- oder einer .NET-Komponente übersetzt werden.

Unterstützt den Dokumentenaustausch

Einer der Hauptvorteile von XML ist die generische Darstellung nicht nur von Daten, sondern auch von komplexen Dokumenten. Diese Dokumente können so einfach sein wie die Darstellung einer aktuellen Adresse, oder sie können so komplex sein wie die Darstellung eines gesamten Buches oder einer Angebotsanfrage (RFQ). Webdienste unterstützen den transparenten Austausch von Dokumenten, um die Geschäftsintegration zu erleichtern.