Web Service

Definition und Abgerenzug

Ein Web Service (WS) ist eine Software-Anwendung, welche mit einem URI eindeutig identifizierbar ist. Die Schnittstellen werde in WSDL definiert. Ein Web Service implementiert Interaktionen mit anderen Anwendungen(zb. andere WS). Kommuniziert wird über XML basierte Nachrichten genauer SOAP welche über internetbasierte Protokolle verschickt werden. Ein Webservice kann als Kommunikationsorientierte Middleware betrachtet werde. Es ist aber kein Middleware im klassischen sinne.

Eigenschaften

  • Zustandslos

Architekturen

Advanced

WS-Addressing

WS-Routing

Die Knoten auf dem Weg einer SOAP Message sind durch das darunterliegene Transportprotokol bestimmt. Damit hat SOAP sozusagen keine Einflus auf Routing. Das wäre aber wünschenswert (Neue Arhitekturen, Piplines usw.)

WS-Security

SOAP lifert keien Mechanismus zu Security oder Transaktionssicherehit. Diese sollten aud der SAP Spezification Aufbauen. Ws-Security ist eine Erweiterung von SOAP: Specification: Web Services Security (WS-Security) WS Security definiert eine block im header, welcher die Signatur neinhalten kann. Ausserdem spezifiziert es wie die Knoten die solch einem Message empfangen mit dieser umgehen sollten.

WS-Policy

Ein Klient muss einiges berücksichtigen bevor er mit dem Service kommunizieren kann. Z.B. WSDL definiert Methoden, Kodierungsformate, und Protokolle die ein Service unterstützt. Damit die Kommunikation stattfinden kann, sollten die beiden sich auf diese Details einigen. Ws Policy ist ein Vorschlag für ein Framework, durch welchen Clients und Services erlaubt Ihre „Requirements“, „Capabilities“ und Eigenschaften zu äußern.

Web Services Invocation Framework (WSIF)

Die Idee ist WSDL wirklich generisch zu machen.

Service Coordination Protocols

Grundlegendes

Die WS-Basisinfrastruktur ist genügend um einfache Interaktionen zu implementieren. Genauer gesagt es unterstützt solche Interaktionen wo ein Client eine Operation auf dem Web Service aufruft. Wenn aber die Interaktion eine koordinierte Sequenz von Operationen involviert, braucht man zusätzliche Abstraktionsebenen und Werkzeuge um die Korrektheit und Konsistenz der Interaktionen zu erhalten (garantieren).

Dies kann man mit der Middleware vergleichen: RPC unterstützt einfache Interaktionen zwischen Client und Server. Um die zusätzlichen Garantien zu ermöglichen (z.B. Transaktionen) braucht man zusätzliche Protokolle (z.B. 2PC) und eine Infrastruktur die dieses unterstützt (z.B. TP-Monitor). Das selbe gilt auch für Web Services.

  • Conversation – Sequenz der Operationen (Nachrichtentauch) welche zwischen Client und dem Service anfallen können
  • Coordination Protocol – Specifikation der Menge von korrekten und akzeptablen conversations.
    • Vertikale Protokolle: Spezifisch für die Geschäftslogik (z.B. Produktbestellungsprotokoll)
    • //Horizontale Protokolle:// Definieren die übliche Infrastruktur (z.B. Transaktionen)

Vetikale Protokole verlassen sich gewühnlich auf die Infrastruktur der horizontaler Protokolle, und Beschäftigen sinch mit semantischen aspekten und Mengen von Korrekten Konversationen.

Modellierungsmöglichkeiten:

  1. state machine (Automaten)
  2. Sequenzdiagramme
  3. Aktivitätsdiagramme

Das Problem besteht darin den Konversationsprotokoll (z.B. in WSDL) generisch abzubilden. Es wurden viele Spezifikationen vorgeschlagen die diese in Verschiedenen zu realisieren versuchten. Derzeitiger Versuch ist die Web Services Conversation Language (WSCL) 1.0

  • Multi-Party Conversation - In solchen Fällen wo ein Client selbst ein Web Service ist, dass heißt das die Konversation über mehrere Partner(Knoten) spricht man von Multi-party conversation.

Infrastruktur der Koordinirungs Protokolle

Conversation Controller

Tool die die Ausführung der Konversation erleichtern werden Conversation Controller genannt. Sie bitten zwei arten der Funktionalätet an:

  • conversation routing - Dispatching der Nachrichten zu Internen Objekten. Ein Objekt für jede Konversation,benzutz wird conversation identifier. Management vom Konversationskontext.
  • protocol copliance verification - Das Protokoll implementiren und überprüfen ob alle Nachrichten nach dem Protokoll geschtrickt sind.

Relevante Themen

Links

de/ws/start.txt · Last modified: %2008/%04/%26 %12:%Apr by aho
Translations of this page:
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0