Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SOAP, UDDI, WS-Inspection und WSDL

Ähnliche Präsentationen


Präsentation zum Thema: "SOAP, UDDI, WS-Inspection und WSDL"—  Präsentation transkript:

1 SOAP, UDDI, WS-Inspection und WSDL
Web Services SOAP, UDDI, WS-Inspection und WSDL

2 Definition Web Service
Keine einheitliche Definition i.A. Dienst, der Benutzern über das Web zur Verfügung gestellt wird und dabei beispielsweise auf XML und HTTP zurückgreift Unterschied zu klassischen Diensten im Web: auf automatisierte Benutzung ausgelegt Sommersemester 2002 Verteilte und Parallele DBMS

3 Verteilte und Parallele DBMS
Stand der Technik Viele große Softwarefirmen bieten entsprechende Produkte an: BEA WebLogic HP Web Services Platform IBM WebSphere Microsoft .NET mySAP.com von SAP SUN ONE Sommersemester 2002 Verteilte und Parallele DBMS

4 Beispiel für Web Services
Marktplätze Automobilindustrie Fluggesellschaften Ziel dieser Marktplätze: Optimierung des Einkaufs, d.h. möglichst schnell das günstigste Angebot unter allen Anbietern zu finden und auch die Bestellung online abwickeln können. Dazu werden Daten von ERP-Systemen in Marktplätzen integriert. Sommersemester 2002 Verteilte und Parallele DBMS

5 Verteilte und Parallele DBMS
Motivation Dienste werden im Internet angeboten Bisher allerdings nur mit HTML-Formularen/ HTML-Seiten als Benutzerschnittstelle Automatische Benutzung schwierig ( „screen scraping“-Technologien) Jeder Dienst hat seine eigene Oberfläche, dadurch keine einheitliche Bedienung Sommersemester 2002 Verteilte und Parallele DBMS

6 Verteilte und Parallele DBMS
Ziel der Web Services Vollautomatische Dienstnutzung Interoperabilität unabhängig vom zugrundeliegenden Betriebssystem, von der Programmiersprache der Services und von der Web Service Engine Dienstkomposition Einheitliche Schnittstellen für Dienste, die dasselbe leisten (z.B. gleiche Schnittstelle für alle Kreditkarten-Bezahl-Dienste, Buchbestellungs-Dienste,…) Sommersemester 2002 Verteilte und Parallele DBMS

7 Verteilte und Parallele DBMS
Interoperabilität (1) Um die Interoperabilität von Diensten zu gewährleisten, braucht man Standards: SOAP (Simple Object Access Protocol – IBM, MS,…) ebXML (Electronic Business using eXtensible Markup Language – OASIS, UN/CEFACT) UDDI (Universal Description, Discovery and Integration – HP, IBM, Intel, Microsoft, SAP, Software AG, Sun, …) WSDL (Web Services Description Language – Ariba, IBM, Microsoft) Sommersemester 2002 Verteilte und Parallele DBMS

8 Verteilte und Parallele DBMS
Interoperabilität (2) Standards (2): WSFL (Web Services Flow Language – IBM) XLANG (Microsoft) WS-Inspection (Web Service Inspection Language – IBM, Microsoft) Alle diese Standards basieren auf XML! Sommersemester 2002 Verteilte und Parallele DBMS

9 XML: Extensible Markup Language
Vom World Wide Web Konsortium (W3C) konzipiert und standardisiert XML-Datenmodell liegt zwischen: HTML Schema-los Beliebige Daten, solange Syntax stimmt Relationales Schema Schema Keine Abweichungen  Semi-strukturierte Daten Teilweise schematisch Aber Ausnahmen Wenn Schema, dann muss es eingehalten werden Sommersemester 2002 Verteilte und Parallele DBMS

10 Verteilte und Parallele DBMS
XML-Daten mit Schema Verschiedene Möglichkeiten DTD Einfach Nicht sehr leistungsfähig XML-Schema Mächtiger als DTDs Unterstützt auch komplexe Typen Viele Grundtypen vordefiniert Sommersemester 2002 Verteilte und Parallele DBMS

11 Aufbau eines XML-Dokumentes
Optionale Präambel – u.a. XML-Version Optionales Schema Ein einziges Wurzelelement, das beliebig viele und beliebig tief geschachtelte Unterelemente beinhalten kann Elemente werden immer von Start- und Ende-Tag eingeschlossen, z.B. <Vorlesung> und </Vorlesung> Elemente = atomare Informationseinheit Jedes Element hat einen Namen, der durch das Start- bzw. Ende-Tag angegeben ist Jedes Element kann Attribute besitzen Inhalt eines Elementes = geordnete Liste aus (Unter-)Elementen, Kommentaren oder Strings Sommersemester 2002 Verteilte und Parallele DBMS

12 Beispiel-XML-Dokument
Präambel <?xml version="1.0" encoding='ISO '?> <!-- obige Zeile ist der Prolog, diese Zeile ist ein Kommentar --> <!-- Schema als DTD --> <!DOCTYPE Buch[ <!ELEMENT Buch (Titel, Autor*, Verlag)> <!ATTLIST Buch Jahr CDATA #REQUIRED> <!ELEMENT Titel (#PCDATA)> <!ELEMENT Autor (#PCDATA)> <!ELEMENT Verlag (#PCDATA)> ]> <!-- Wurzelelement--> <Buch Jahr="2001"> <Titel>Datenbanksysteme: Eine Einführung</Titel> <Autor>Alfons Kemper</Autor> <Autor>Andre Eickler</Autor> <Verlag>Oldenbourg Verlag</Verlag> </Buch> Schema Start- und Ende-Tag des Wurzelelementes Name des Wurzelelementes Attribut des Buch-Elementes Unterelemente Wurzelelement Sommersemester 2002 Verteilte und Parallele DBMS

13 Überblick über den Einsatz von Web Services
Sommersemester 2002 Verteilte und Parallele DBMS

14 Überblick Web Services – Dienste registrieren
Sommersemester 2002 Verteilte und Parallele DBMS

15 Überblick Web Services – Dienstsuche
Sommersemester 2002 Verteilte und Parallele DBMS

16 Überblick Web Services – Proxy generieren (1)
Sommersemester 2002 Verteilte und Parallele DBMS

17 Überblick Web Services - Proxy generieren (2)
Sommersemester 2002 Verteilte und Parallele DBMS

18 Überblick Web Services – Dienst ansprechen
Sommersemester 2002 Verteilte und Parallele DBMS

19 Aktionen des Dienstanbieters
Sommersemester 2002 Verteilte und Parallele DBMS

20 Verteilte und Parallele DBMS
Aktionen von Klienten Sommersemester 2002 Verteilte und Parallele DBMS

21 Verteilte und Parallele DBMS
Beispiel-Szenario Vorstellung der weit verbreiteten Standards SOAP, UDDI, WS-Inspection und WSDL am Beispiel eines Temperaturdienstes. Die Dienste des Beispiel-Szenarios werden auf wetter.fmi.uni-passau.de angeboten Sommersemester 2002 Verteilte und Parallele DBMS

22 Verteilte und Parallele DBMS
Der Temperaturdienst Liefert zu einem vom Benutzer vorgegebenen Zeitpunkt die Temperatur zurück, die an einem Temperatursensor in der Stadt Passau gemessen wurde. keine Messdaten zum geforderten Zeitpunkt  Messwert vom nächstgelegenen Messzeitpunkt Sommersemester 2002 Verteilte und Parallele DBMS

23 Weitere Dienste des Szenarios
Einheitenumrechnerdienst: Rechnet Temperaturangaben in verschiedene Einheiten um TemperaturInFahrenheitDienst: Liefert wie der Temperaturdienst die Temperatur in der Stradt Passau zurück, allerdings in Grad Fahrenheit Sommersemester 2002 Verteilte und Parallele DBMS

24 Überblick über die Standards
SOAP Kommunikationsprotokoll zum Austausch von Nachrichten UDDI Standard für Dienstverzeichnisse von Web Services WS-Inspection Spezifikation für Site-basierte Dienstsuche WSDL Sprache zur Dienstbeschreibung Sommersemester 2002 Verteilte und Parallele DBMS

25 Das Kommunikationsprotokoll SOAP
Simple Object Access Protokoll XML-basiertes Protokoll Kommunikationsprotokoll für verteilte Anwendungen zum Austausch strukturierter und typisierter Daten Kann z.B. HTTP, SMTP, FTP,… als Übertragungsprotokoll nutzen Anwendungsspektrum: Vom Zustellen einer Nachricht bis zum RPC (Remote Procedure Call) Sommersemester 2002 Verteilte und Parallele DBMS

26 Verteilte und Parallele DBMS
SOAP - Serialisierung Eigene Serialisierungs-Spezifikationen möglich Standard-Serialisierung: Typsystem basierend auf gebräuchlichen Typsystemen Objekte bzw. Objektstrukturen dieses Typsystems werden auf XML abgebildet Arrays und Referenzen sind auch möglich Abbildungen der Typsysteme von Programmiersprachen auf das SOAP-Typsystem sind nicht festgelegt! Sommersemester 2002 Verteilte und Parallele DBMS

27 SOAP - Nachrichtenformat
<soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <!--Der Header ist optional --> </soap:Header> <soap:Body> <!-- Serialisierte Objektdaten --> </soap:Body> </soap:Envelope> Envelope Sommersemester 2002 Verteilte und Parallele DBMS

28 SOAP - Nachrichtenformat
Angabe der Serialisierungsspezifikation (Hier Standard-Serialisierung) <soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <!--Der Header ist optional --> </soap:Header> <soap:Body> <!-- Serialisierte Objektdaten --> </soap:Body> </soap:Envelope> Envelope Sommersemester 2002 Verteilte und Parallele DBMS

29 SOAP - Nachrichtenformat
<soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <!--Der Header ist optional --> </soap:Header> <soap:Body> <!-- Serialisierte Objektdaten --> </soap:Body> </soap:Envelope> Header Sommersemester 2002 Verteilte und Parallele DBMS

30 Verteilte und Parallele DBMS
SOAP - Header Optionales Element Bietet generischen Mechanismus, um SOAP dezentral zu erweitern Beispiele für Erweiterungen: Web Service Security Language Transaktionsmanagement Sommersemester 2002 Verteilte und Parallele DBMS

31 SOAP - Nachrichtenformat
<soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <!--Der Header ist optional --> </soap:Header> <soap:Body> <!-- Serialisierte Objektdaten --> </soap:Body> </soap:Envelope> Body Sommersemester 2002 Verteilte und Parallele DBMS

32 Verteilte und Parallele DBMS
SOAP - Body Möglichkeit zwischen Sender und Empfänger Daten auszutauschen Typische Verwendungszwecke: Aufnahme serialisierter Daten für RPC-Aufrufe Aufnahme von Fehlernachrichten SOAP definiert nur das Fault-Element für die Übermittlung von Fehlerzuständen als Unterelement des Body-Elementes Sommersemester 2002 Verteilte und Parallele DBMS

33 Kommunikation mit SOAP
Standardisierte Möglichkeit: SOAP über HTTP Sender  Empfänger: HTTP-Post-Anforderungen Empfänger  Sender: HTTP-Antwort Auch RPC-Aufrufe über SOAP/HTTP sind standardisiert Alternative Möglichkeiten (nicht standardisiert): SOAP über SMTP (Mailprotokoll) SOAP über FTP (Dateiübertragungsprotokoll) Sommersemester 2002 Verteilte und Parallele DBMS

34 Anfrage an den Temperaturdienst
Anfrage: „ Liefere die Temperatur, die am um Uhr gemessen worden ist“ Sommersemester 2002 Verteilte und Parallele DBMS

35 SOAP-Nachricht eigebettet in eine HTTP-POST-Anforderung
Name der Methode Name der Methode Parameter der Methode Sommersemester 2002 Verteilte und Parallele DBMS

36 Antwort des Temperaturdienstes
Am , Uhr wurden 4.4 Grad Celsius gemessen! Achtung: Nächstgelegener Messzeitpunkt! Sommersemester 2002 Verteilte und Parallele DBMS

37 SOAP-Nachricht eingebettet in eine HTTP-Antwort
Anforderung erfolgreich bearbeitet Sommersemester 2002 Verteilte und Parallele DBMS

38 Verteilte und Parallele DBMS
Dienstverwaltung Um Dienste zu nutzen, benötigt man Metadaten: Wo findet man einen Dienst? Was tut er genau? Wie spricht man ihn an? Wer betreibt den Dienst? Dafür gibt es den Verzeichnisdienst UDDI und als Alternative WS-Inspection Sommersemester 2002 Verteilte und Parallele DBMS

39 UDDI - Verzeichnisdienst
Universal Description, Discovery and Integration Aktuell: Version 2 Initiative von mehr als 300 Firmen (HP, IBM, Microsoft, SAP, Software AG,…) Ziel: Globales UDDI-Verzeichnis Speicherung der Metadaten in einheitlicher Datenstruktur  UDDI-Schema (XML Schema) Festlegung von Veröffentlichungs-Mechanismen  UDDI-Publishing-API Festlegung einer Anfragesprache  UDDI-Inquiry-API Konzeptuell: Verteiltes Datenbanksystem (allerdings ohne Transaktionssystem!) Sommersemester 2002 Verteilte und Parallele DBMS

40 Globales UDDI-Verzeichnis
Viele lokale Installationen von UDDI-Servern Zusammenschluss zu globalem Verbund Periodischer Abgleich der Daten Erscheint dem Benutzer wie ein Server  UDDI-Wolke Sommersemester 2002 Verteilte und Parallele DBMS

41 Verteilte und Parallele DBMS
UDDI-Server-Verbund Sommersemester 2002 Verteilte und Parallele DBMS

42 Verteilte und Parallele DBMS
Daten in UDDI White Pages: Daten über den Dienstanbieter Adressdaten Kontaktpersonen Identifikatoren, z.B. Steuernummern Yellow Pages: Angaben über Dienste Wie die Gelben Seiten basierend auf Klassifikationen Eigene Klassifikationen möglich Green Pages: Teschnische Informationen Adresse von Diensten Wie werden die Dienste konkret angeprochen Sommersemester 2002 Verteilte und Parallele DBMS

43 Datenstukturen in UDDI (1)
Hauptstukturen: businessEntity: Firmeninformationen businessService: Klassen von Diensten bindingTemplate: Technische Informationen Logisch in einer Baumstruktur angeordnet: bindingTemplate businessService bindingTemplate businessEntity businessService bindingTemplate bindingTemplate businessService bindingTemplate Sommersemester 2002 Verteilte und Parallele DBMS bindingTemplate

44 Datenstukturen in UDDI (2)
Strukturen zur Klassifikation und Kategorienbildug tModel (technical model): Kategorienbildung und Referenzierung von technischen Informationen publisherAssertions: Modellierung von Geschäftsbeziehungen (z.B. Allianzen) Instanzen aller Strukturen durch UUIDs (Universally Unique IDs) eindeutig identifizierbar Sommersemester 2002 Verteilte und Parallele DBMS

45 UML-Modell des UDDI-Schemas - Teilansicht
Sommersemester 2002 Verteilte und Parallele DBMS

46 UML-Modell des UDDI-Schemas
Sommersemester 2002 Verteilte und Parallele DBMS

47 Verteilte und Parallele DBMS
businessEntity Angaben über eine Firma, Organisation, o.ä. businessKey wird automatisch vergeben Beispiel: businessEntity des Lst. für Dialog. Systeme Hier Kategorisierung nach geographischer Lage: ISO 3166: DE-BY-PAS = Deutschland-Bayern-Passau Sommersemester 2002 Verteilte und Parallele DBMS

48 Verteilte und Parallele DBMS
businessService Dienstgruppierung innerhalb eines businessEntities Keine Auskunft über konkrete Dienste Beispiel: businessService, der Temperaturdienste gruppiert Sommersemester 2002 Verteilte und Parallele DBMS

49 Verteilte und Parallele DBMS
bindingTemplate Konkreter Dienst innerhalb eines businessServices Beinhaltet technische Informationen: Zugriffspunkt: accessPoint Beschreibung der Aufruf- und Rückgabemodalitäten im referenzierten tModel Beispiel: Temperaturdienst Sommersemester 2002 Verteilte und Parallele DBMS

50 tModel als technischer Fingerabdruck
Verweis auf technische Dienstbeschreibungen Normalerweise werden WSDL-Dokumente referenziert Beispiel: tModel für Temperaturdienst Sommersemester 2002 Verteilte und Parallele DBMS

51 tModel als Namensraumbezeichner
Erzeugen und Benutzung von Taxonomien Beispiel: tModel für ISO 3166: Beispiel: tModel für WSDL-Dokumente: Sommersemester 2002 Verteilte und Parallele DBMS

52 Übersicht über die UDDI-Einträge für das Beispielszenario
Sommersemester 2002 Verteilte und Parallele DBMS

53 UDDI-Anfragesprache (Inquiry-API)
XML-basiert Kommunikation über SOAP-Protokoll Beschränkt auf relativ einfache Anfragen Zwei Arten von Anfragen: Browse-Anfragen Drill-Down-Anfragen Verwendung: z.B. UDDI-Browser zur interaktiven Dienstsuche Sommersemester 2002 Verteilte und Parallele DBMS

54 Verteilte und Parallele DBMS
Browse-Anfragen Erstmaliges Auffinden von Metadaten Beispiel: Suche alle businessEntities, deren Name mit „Universitaet“ beginnt: Maximal 5 Ergebnisse Aufsteigend nach Namen sortiert Präfixvergleich, da nichts anderes angegeben ist Sommersemester 2002 Verteilte und Parallele DBMS

55 Verteilte und Parallele DBMS
Drill-Down-Anfragen Liefern detaillierte Daten zu bekannten Identifikatoren (UUIDs) Beispiel: Suche nach dem tModel mit der angegebenen UUID: Sommersemester 2002 Verteilte und Parallele DBMS

56 UDDI-Befehle zur Datenmodifikation (Publishing-API)
Ebenfalls XML-basiert Kommunikation über SOAP-Protokoll via HTTPS Speicher- und Löschaufrufe Beispiel: Sommersemester 2002 Verteilte und Parallele DBMS

57 Umgang mit bindingTemplates: Pufferung und Puffer-Kohärenz
Anwendung A lädt die Metadaten von Dienst T. Die technischen Informationen können von A gepuffert werden. Schlägt ein Aufruf von T fehl, muss A erneut die (hoffentlich) aktualisierten Metadaten von T abrufen. Diese können dann wieder gepuffert werden. Vorteile: Verhindert Überlastung von UDDI-Servern Verhindert Überalterung von gepufferten Daten Sommersemester 2002 Verteilte und Parallele DBMS

58 Globale Replikation der Daten
Primärkopie-Ansatz Jedes Datum hat einen Heimat-Server und einen Zeitstempel der letzten Änderung Am Heimat-Server kann es geändert bzw. gelöscht werden Periodische Benachrichtigung anderer UDDI-Server Veraltete Daten werden aktualisiert Replikation läuft über SOAP auf HTTPS-Verbindungen Sommersemester 2002 Verteilte und Parallele DBMS

59 Site-basierte Dienstsuche: WS-Inspection
Keine Konkurrenz, sondern Ergänzung zu UDDI Möglichkeit, auf alle Dienste einer Site zu verweisen Sammlung von Referenzen auf bereits vorhandene Dienstbeschreibungen Kopien von Beschreibungen nicht nötig Spezielle Elemente für Verweise auf WSDL-Dokumente und UDDI-Einträge Flexibel erweiterbar Sommersemester 2002 Verteilte und Parallele DBMS

60 WS-Inspection-Dokument von wetter.fmi.uni-passau.de
Referenz auf WSDL-Datei Referenz auf UDDI-Verzeichnis Sommersemester 2002 Verteilte und Parallele DBMS

61 Auffinden von WS-Inspection-Dokumenten
Möglichkeit 1: inspection.wsil an den Haupteinstiegspunkten eines Web-Servers: Möglichkeit 2: Verweis auf WS-Inspection-Dokumente innerhalb von HTML-Seiten: Sommersemester 2002 Verteilte und Parallele DBMS

62 Dienstbeschreibung mit WSDL
XML-basiert Beschreibung von Diensten: Operationen Format der Ein- und Ausgabedaten Kommunikationsprotokoll Erweiterbar durch „Erweiterungselemente“  Verschiedene Protokolle und Datenformate verwendbar Sommersemester 2002 Verteilte und Parallele DBMS

63 Aufbau von WSDL-Dokumenten
Elemente: types message portType binding port service Dienst = Menge von Endpunkten, die Nachrichten miteinander austauschen Sommersemester 2002 Verteilte und Parallele DBMS

64 Struktur eines WSDL-Dokumentes (1)
Sommersemester 2002 Verteilte und Parallele DBMS

65 Struktur eines WSDL-Dokumentes (2)
Sommersemester 2002 Verteilte und Parallele DBMS

66 Beispiel: Der Temperaturdienst - Typen
Definition von Datentypen für die Nachrichten Normalerweise XML-Schema als Typsystem, andere Typsysteme möglich Vorhandene XML-Schema-Dokumente können eingebunden werden (import) Sommersemester 2002 Verteilte und Parallele DBMS

67 Beispiel: Der Temperaturdienst - Nachrichten
Definiert Format der Ein- und Ausgabedaten Pro Nachricht ein message-Element Pro Bestandteil ein part-Element Wenn man Nachrichten mit Funktionen vergleicht, entsprechen parts den Parametern Nur abstakte Beschreibung von Nachrichten! Übertragungsformat ist nicht festgelegt! Sommersemester 2002 Verteilte und Parallele DBMS

68 Beispiel: Der Temperaturdienst – Port-Typen (1)
Fasst Nachrichten zu abstrakten Operationen zusammen Mehrere Operationen pro Port-Typ möglich Vier mögliche Operationsprimitiven: One-Way: Endpunkt empfängt Nachricht Request-Response: Endpunkt empfängt Nachricht und antwortet Solicit-Response: Enpunkt sendet Nachricht und empfängt Antwort Notification: Endpunkt sendet Nachricht Sommersemester 2002 Verteilte und Parallele DBMS

69 Beispiel: Der Temperaturdienst – Port-Typen (2)
Unterelemente einer Operation: input: Format der zu empfangenen Nachricht output: Format der zu sendenden Nachricht fault: Beschreibung möglicher Fehlernachrichten Reihenfolge/Vorhandensein der Elemente legt den Operationstyp fest Sommersemester 2002 Verteilte und Parallele DBMS

70 Beispiel: Der Temperaturdienst – Bindungen
Bindung = Port-Typ + Protokoll + Nachrichtenformat Mehrere Bindungen für einen Port-Typ möglich (z.B. SOAP, HTTP und MIME) Sommersemester 2002 Verteilte und Parallele DBMS

71 Beispiel: Der Temperaturdienst – Ports und Dienste
Port = Bindung + Netzwerkadresse Dienst = Gruppierung zusammengehöriger Ports Einsatz von Erweiterungselementen, um verschiedene Protokolle zu unterstützen (hier SOAP) SOAP, HTTP und MIME-Erweiterungselemente bereits im WSDL-Standard Sommersemester 2002 Verteilte und Parallele DBMS

72 WSDL-Dokument des Temperaturdienstes (1)
Sommersemester 2002 Verteilte und Parallele DBMS

73 WSDL-Dokument des Temperaturdienstes (2)
Sommersemester 2002 Verteilte und Parallele DBMS

74 Einbettung von WSDL in UDDI
Problem: UDDI und WSDL speichern Daten über z.B. Netzwerkadresse  Redundanz, Schlechte Widerverwendbarkeit des WSDL-Dokumentes Lösung: service-Element wird aus WSDL-Dokumenten weggelassen. Diese Informationen werden allein von UDDI verwaltet. UDDI verweist innerhalb von tModels auf WSDL-Dokumente Sommersemester 2002 Verteilte und Parallele DBMS

75 Dienstkomposition und -interaktion
Durch Komposition vorhandener Dienste können neue Dienste „zusammengebaut“ werden. Beispiel: TemperaturInFahrenheitDienst = Temperaturdienst + Einheitenumrechnerdienst Auch dafür gibt es XML-basierte Sprachen: Web Services Flow Language (WSFL) von IBM XLang von Microsoft XL von Donald Kossmann et al. Sommersemester 2002 Verteilte und Parallele DBMS

76 Der TemperaturInFahrenheitDienst
Sommersemester 2002 Verteilte und Parallele DBMS

77 Verteilte und Parallele DBMS
ServiceGlobe Forschungsplattform für Web Services basierend auf: SOAP UDDI WSDL Neuartige Infrastruktur: Web Services können auf beliebigen Service Hosts ausgeführt werden Dynamische Dienstauswahl Adaptoren zum Einbinden von existierenden, nicht-konformen Diensten (z.B. RPC-basierte Dienste) Sommersemester 2002 Verteilte und Parallele DBMS

78 ServiceGlobe – Dynamische Dienstauswahl
„Aufruf von tModels“ passende Implementierung wird während des Kompilierung oder zur Laufzeit ausgewählt One-, Some-, All-Aufrufe möglich Angabe von Constraints Beispiel: Rufe alle Temperaturdienste auf; beachte alle Ergebnisse, die innerhalb von einer Minute eintreffen Vorteile: Optimierung der Abarbeitung möglich Bessere Verfügbarkeit, da bei Ausfall einzelner Dienste automatisch Alternativen gewählt werden Sommersemester 2002 Verteilte und Parallele DBMS

79 ServiceGlobe - Architektur
Sommersemester 2002 Verteilte und Parallele DBMS

80 Verteilte und Parallele DBMS
Zusammenfassung Vorstellung der wichtigsten Standards: SOAP UDDI WS-Inspection WSDL Servicekomposition und –interaktion Sommersemester 2002 Verteilte und Parallele DBMS


Herunterladen ppt "SOAP, UDDI, WS-Inspection und WSDL"

Ähnliche Präsentationen


Google-Anzeigen