SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Service orientierte
           Architekturen
           VU Wissenstechnologien
                       WS 2007/08
                Werner Klieber
           wklieber@knowcenter.at


                                           http://www.know-center.at
© Know-Center - gefördert durch das Kompetenzzentrenprogramm
Inhalt


   Services/WebServices
   Service orientierte Architekturen
   Einschränkungen




                                                             2
                                       http://www.know-center.at

November 2007   © Know-Center
Was sind (Web) Services?


Definition von Service:
    Eine Applikation-Komponente, die Information zur Verfügung
    stellt oder Daten transformiert.
    Ein Service muss immer auf einem Rechner ausgeführt werden
    und kann daher eindeutig adressiert werden.
    Implementierung eines Services kann über mehre Rechner
    verteilt werden, indem andere Services eingebunden werden
    Ein Service soll möglichst autonom und unabhängig arbeiten um
    eine lose Kopplung von Systemmodulen zu ermöglichen.
    Verwenden von plattformunabhängigen und sprachunabhängigen
    Protokollen
    Web Services Verwenden Web-Technologien (XML) und sind über
    das Web erreichbar.
    Web Services stellen ein Interface zur Verfügung, das von
                                                                                 3
    anderen Programmen aufgerufen werden kann.

                                                           http://www.know-center.at

November 2007        © Know-Center
Finden von Web Services


                                                 Server

                                Lookup
                        (Service beschreibung)

                                                                         Find-bind-execute
                                                            WSDL
    Client

                                                                         pattern.
    (Stub)
                                SOAP
                                                          Webservice
                                                          (Skeleton)

                                                                         Service lookup auf
                                                                         UDDI (Universal
                                                                         Description,
                                                                         Discovery and
             Services finden
                                                     Kennt das Service


                                                                         Integration) Servern


                                  UDDI




                                                                                                        4
                                                                                  http://www.know-center.at

November 2007                            © Know-Center
Standards und Spezifikationen 1


Definition von Service:
    Standards werden vom W3C Konsortium entwickelt.
    WS-I: Industrie Organisation um Web Service
    Interoperabilität zwischen Plattformen, Betriebssystemen
    und Programmiersprachen zu gewährleisten.
    WSDL: Web Service Description Language. Ist ein XML
    Format um Web Services technisch als Set von
    Operationen basierend auf Messages zu beschreiben.
    SOAP: Simple Object Access Protocoll. Ist ein one-way,
    stateless Protokoll um Daten in XML von einem Sender zu
    einem Empfänger zu transportieren. In SOAP 1.2 können
                                                                           5
    auch Messages an mehre Empfänger gesendet werden.

                                                     http://www.know-center.at

November 2007      © Know-Center
Standards und Spezifikationen 2


Definition von Service:
    UDDI: Universal Description, Discovery and Integration
    Spezifikation. UDDI ist ein Registry Service für Web
    Services als auch anderen elektronischen Services.
    SAML: Security Assertion Markup Language vom OASIS-
    Konsortium. Ist ein XML-basiertes Framework für
    Benutzerauthentifizierung und sicherheitsbezogene
    Informationen zu beschreiben und zu übertragen.
    XKMS: XML Key Management Specification. Verteilen und
    Registrieren von Public-Keys.
    REST (Representational State Transfer). Anderer Ansatz
                                                                           6
    zu WSDL/Soap.

                                                     http://www.know-center.at

November 2007      © Know-Center
Überblick Standards




                                                                                             7
(http://www.innoq.com/soa/ws-standards/poster/WS-Standards-2007-02-medium.jpg)‫‏‬

                                                                       http://www.know-center.at

November 2007          © Know-Center
WebServices mit WSDL und
SOAP

 <wsdl>
   <!-- define a operation -->
   <wsdl:operation name=quot;GetUserDataquot;>
      <wsdl:input message=quot;es:GetUserDataRequestquot;/>
      <wsdl:output message=quot;es:GetUserDataResponsequot;/>
   </wsdl:operation>

   <!-- Request -->
    <xsd:element name=quot;GetUserDataRequestquot;>
       <xsd:complexType><xsd:sequence>
          <xsd:element name=quot;usernamequot; type=quot;stringquot;/>
          <xsd:element name=quot;rolequot; type=quot;stringquot;/>
       </xsd:sequence></xsd:complexType>
    </xsd:element>
   <!-- Response -->
   <xsd:element name=quot;GetUserDataResponsequot;>
       <xsd:complexType><xsd:all>
          <xsd:element name=quot;emailquot; type=quot;stringquot;/>
       </xsd:all></xsd:complexType>
   </xsd:element>
<wsdl>
                                                                               8
                                                         http://www.know-center.at

November 2007        © Know-Center
WebServices mit WSDL und
SOAP


<soap:Envelope>
  <soap:Body
       xmlns:m=quot;http://www.example.org/userdataquot;>
     <m:GetUserData>
        <m:email>user@example.org</m:email>
     </m:GetUserData>
   </soap:Body>
</soap:Envelope>




                                                                9
                                          http://www.know-center.at

November 2007   © Know-Center
REST (Representational State Transfer)‫‏‬



   WebServices mit SOAP: Ursprünglich um Standardisierte
   Funktionalitäten in Web-Seiten einzubinden. Werden aber als
   Middleware-Komponenten verwendet.
   REST als Technologie um WebServices ohne Programierung zu
   verwenden.
   Inputparameter werden in Web-Url mitgeschickt. Ergebnis ist ein
   XML Dokument. Ergebnisse können zum Beispile mit Stylesheet
   Transformationen eigene Web-Seiten eingebaut werden.
   REST ist statless.
   Wie das Ergebnis einer Anfrage repräsentiert wird, ist bei REST
   nicht spezifiziert.
   Komposition: Es gibt eigentlich keine REST-Services sondern nur
   Resourcen. Diese sind über URIS eindeutig im Web Lokalisierbar
   und stehen anderen Anwendungen zur Verfügung
                                                                                 10
                                                           http://www.know-center.at

November 2007       © Know-Center
REST Beispiel (Amazon Resultat)‫‏‬


<ProductInfo>
  <Request>
  <Args> omitted for clarity</Args>
  </Request>
 <TotalResults>828</TotalResults>
 <TotalPages>83</TotalPages>
  <Details url=quot;http://www.amazon.com/...quot;>
   <Asin>0596004508</Asin>
   <ProductName>Mac OS X: The Missing Manual...</ProductName>
   <Catalog>Book</Catalog>
   <Authors>
        <Author>David Pogue</Author>
   </Authors>
   <ImageUrlSmall>http://images.amazon.com/...</ImageUrlSmall>
   <ImageUrlMedium>http://images.amazon.com/...</ImageUrlMedium>
   <OurPrice>$20.97</OurPrice>
</Details>
  insert nine more books here
</ProductInfo>
                                                                                 11
                                                           http://www.know-center.at

November 2007         © Know-Center
Inhalt


   Services/WebServices
   Service orientierte Architekturen
   Einschränkungen




                                                             12
                                       http://www.know-center.at

November 2007   © Know-Center
Service Oriented Architecture
(SOA)


   SOA wird verwendet um Services zu verwalten.
   Realisierungen durch ESB (Enterprise Service Bus)
   Ist business orientiert (B2B)




                                                                     13
                                               http://www.know-center.at

November 2007   © Know-Center
Service Oriented Architecture -
Motivation case studies


   SOA verspricht:Technologieunabhängigkeit,
   Wiederverwendbarkeit, Flexibiltät, Kostenersparniss
   Applikationen besteht aus zusammengesetzten,
   wieder verwendbaren Komponenten. (Service
   oriented Computing Paradigma).
   Kümmert sich um Sicherheit, Workflow, Routing,
   Monitoring, Performance, …




                                                                     14
                                               http://www.know-center.at

November 2007   © Know-Center
Services zusammenschalten
(orchestrieren)


   Kernidee ist eine lose Kopplung einzelner
   Services. Services sollen autonom,
   isoliert und entkoppelt sein.
    “Contracts” definieren was Services
   machen (Verträge). “Policies” wie sie
   interagieren sollen (Richtlinien).
   Services dynamisch anbinden
                                                                Applikation
                                                                 (Service)




   (dezentrale Steuerung).
                                                      Aggregatons          Aggregatons

   BPEL (Business Process Execution                     Service              Service




   Language): XML-Standart um Prozesse
   zu modellieren.                         Compent              Compent              Compent
                                            Service              Service              Service


                                                                                                15
                                                             http://www.know-center.at

November 2007   © Know-Center
Choreography & Orchestration


Orchestration
   Aggregation von verschiedenen Services zu Workflows.
   Beinhaltet viele Low-Level Engineering-Tasks wie
   Transaktionsmangement, Datenkonvertierungen, …


 Choreography
   Wie man mit dem Service interagiert
   Konsumation der Funktionalität


Ziel: Automation von Choreography & Orchestration
                                                                          16
                                                    http://www.know-center.at

November 2007    © Know-Center
Choreography & Orchestration (Bsp.)‫‏‬



      Choreography                  Orchestration




                                                                                  17
from W3C-Workshop-Talk (John Domingue, DERI)
http://www.w3.org/2005/04/FSWS/Submissions/1/wsmo_v10.pdf   http://www.know-center.at

November 2007       © Know-Center
Limitierungen



   SOA-Inseln
   Sumpf/Wüsteneffekte
   Automatisches Orchestrieren von
   Services und Choreographie ist
   problematisch




                                                           18
                                     http://www.know-center.at

November 2007   © Know-Center
Ende




                                                      19
                                http://www.know-center.at

November 2007   © Know-Center

Mais conteúdo relacionado

Semelhante a Service-orientierte Architekturen

Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Josef Adersberger
 
Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?QAware GmbH
 
Präsentation webservices
Präsentation webservicesPräsentation webservices
Präsentation webservicesxxtesaxx
 
skilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft Azureskilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft AzureCarola Pantenburg
 
Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...
Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...
Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...Michael Kirst-Neshva
 
Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13
Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13
Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13OPITZ CONSULTING Deutschland
 
Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben OPITZ CONSULTING Deutschland
 
Wissenstechnologie 2007 - VIII
Wissenstechnologie 2007 - VIIIWissenstechnologie 2007 - VIII
Wissenstechnologie 2007 - VIIIpscheir
 
Ecm 5 13_djaafar_jas_forge
Ecm 5 13_djaafar_jas_forgeEcm 5 13_djaafar_jas_forge
Ecm 5 13_djaafar_jas_forgeJasmine Conseil
 
Cloud-native Apps 2.0
Cloud-native Apps 2.0Cloud-native Apps 2.0
Cloud-native Apps 2.0QAware GmbH
 
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Ileana Somesan
 
Oracle Open World 2009 Review V1.6
Oracle Open World 2009 Review V1.6Oracle Open World 2009 Review V1.6
Oracle Open World 2009 Review V1.6Torsten Winterberg
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data KonnektivitätTrivadis
 
OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...
OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...
OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...NETWAYS
 
Interoperable IT-Infrastruktur für die öffentliche Verwaltung
Interoperable IT-Infrastruktur für die öffentliche VerwaltungInteroperable IT-Infrastruktur für die öffentliche Verwaltung
Interoperable IT-Infrastruktur für die öffentliche VerwaltungJohann Höchtl
 
Oracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzOracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzVolker Linz
 
Tk roadschow-icinga-pdeneu
Tk roadschow-icinga-pdeneuTk roadschow-icinga-pdeneu
Tk roadschow-icinga-pdeneuWerner Fischer
 
TRANSCONNECT® cloud (SQL Projekt AG)
TRANSCONNECT® cloud (SQL Projekt AG)TRANSCONNECT® cloud (SQL Projekt AG)
TRANSCONNECT® cloud (SQL Projekt AG)SQL Projekt AG
 

Semelhante a Service-orientierte Architekturen (20)

Vorlesung SOA - DIS AG.pptx
Vorlesung SOA - DIS AG.pptxVorlesung SOA - DIS AG.pptx
Vorlesung SOA - DIS AG.pptx
 
Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?
 
Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?
 
Präsentation webservices
Präsentation webservicesPräsentation webservices
Präsentation webservices
 
skilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft Azureskilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft Azure
 
Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...
Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...
Hybrid cloud iaa-s_office-365-azure_sharepoint-konferenz-wien-2013_ankbs_mich...
 
Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13
Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13
Tipps & Tricks zum Aufbau einer Unternehmenscloud mit CC13
 
C5 Mashup
C5 MashupC5 Mashup
C5 Mashup
 
Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben
 
Wissenstechnologie 2007 - VIII
Wissenstechnologie 2007 - VIIIWissenstechnologie 2007 - VIII
Wissenstechnologie 2007 - VIII
 
Ecm 5 13_djaafar_jas_forge
Ecm 5 13_djaafar_jas_forgeEcm 5 13_djaafar_jas_forge
Ecm 5 13_djaafar_jas_forge
 
Cloud-native Apps 2.0
Cloud-native Apps 2.0Cloud-native Apps 2.0
Cloud-native Apps 2.0
 
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
 
Oracle Open World 2009 Review V1.6
Oracle Open World 2009 Review V1.6Oracle Open World 2009 Review V1.6
Oracle Open World 2009 Review V1.6
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data Konnektivität
 
OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...
OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...
OSMC 2009 | Verteilte Monitoring-Umgebungen unter Verwendung eines ESBs by Be...
 
Interoperable IT-Infrastruktur für die öffentliche Verwaltung
Interoperable IT-Infrastruktur für die öffentliche VerwaltungInteroperable IT-Infrastruktur für die öffentliche Verwaltung
Interoperable IT-Infrastruktur für die öffentliche Verwaltung
 
Oracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzOracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im Einsatz
 
Tk roadschow-icinga-pdeneu
Tk roadschow-icinga-pdeneuTk roadschow-icinga-pdeneu
Tk roadschow-icinga-pdeneu
 
TRANSCONNECT® cloud (SQL Projekt AG)
TRANSCONNECT® cloud (SQL Projekt AG)TRANSCONNECT® cloud (SQL Projekt AG)
TRANSCONNECT® cloud (SQL Projekt AG)
 

Mais de pscheir

Wissenstechnologie 2007 - IX
Wissenstechnologie 2007 - IXWissenstechnologie 2007 - IX
Wissenstechnologie 2007 - IXpscheir
 
Ontologie et al. Begriffsdefinitionen im Kontext Wissensrepräsentation
Ontologie et al.  Begriffsdefinitionen im Kontext WissensrepräsentationOntologie et al.  Begriffsdefinitionen im Kontext Wissensrepräsentation
Ontologie et al. Begriffsdefinitionen im Kontext Wissensrepräsentationpscheir
 
Wissenstechnologie 2007 - VII
Wissenstechnologie 2007 - VIIWissenstechnologie 2007 - VII
Wissenstechnologie 2007 - VIIpscheir
 
Wissenstechnologie 2007 - VI
Wissenstechnologie 2007 - VIWissenstechnologie 2007 - VI
Wissenstechnologie 2007 - VIpscheir
 
Wissenstechnologie 2007 - V
Wissenstechnologie 2007 - VWissenstechnologie 2007 - V
Wissenstechnologie 2007 - Vpscheir
 
Wissenstechnologie 2007 - IV
Wissenstechnologie 2007 - IVWissenstechnologie 2007 - IV
Wissenstechnologie 2007 - IVpscheir
 
Wissenstechnologie 2007- III
Wissenstechnologie 2007- IIIWissenstechnologie 2007- III
Wissenstechnologie 2007- IIIpscheir
 
Wissenstechnologie 2007 - II
Wissenstechnologie 2007 - IIWissenstechnologie 2007 - II
Wissenstechnologie 2007 - IIpscheir
 
Wissenstechnologie 2007 - I
Wissenstechnologie 2007 - IWissenstechnologie 2007 - I
Wissenstechnologie 2007 - Ipscheir
 

Mais de pscheir (9)

Wissenstechnologie 2007 - IX
Wissenstechnologie 2007 - IXWissenstechnologie 2007 - IX
Wissenstechnologie 2007 - IX
 
Ontologie et al. Begriffsdefinitionen im Kontext Wissensrepräsentation
Ontologie et al.  Begriffsdefinitionen im Kontext WissensrepräsentationOntologie et al.  Begriffsdefinitionen im Kontext Wissensrepräsentation
Ontologie et al. Begriffsdefinitionen im Kontext Wissensrepräsentation
 
Wissenstechnologie 2007 - VII
Wissenstechnologie 2007 - VIIWissenstechnologie 2007 - VII
Wissenstechnologie 2007 - VII
 
Wissenstechnologie 2007 - VI
Wissenstechnologie 2007 - VIWissenstechnologie 2007 - VI
Wissenstechnologie 2007 - VI
 
Wissenstechnologie 2007 - V
Wissenstechnologie 2007 - VWissenstechnologie 2007 - V
Wissenstechnologie 2007 - V
 
Wissenstechnologie 2007 - IV
Wissenstechnologie 2007 - IVWissenstechnologie 2007 - IV
Wissenstechnologie 2007 - IV
 
Wissenstechnologie 2007- III
Wissenstechnologie 2007- IIIWissenstechnologie 2007- III
Wissenstechnologie 2007- III
 
Wissenstechnologie 2007 - II
Wissenstechnologie 2007 - IIWissenstechnologie 2007 - II
Wissenstechnologie 2007 - II
 
Wissenstechnologie 2007 - I
Wissenstechnologie 2007 - IWissenstechnologie 2007 - I
Wissenstechnologie 2007 - I
 

Service-orientierte Architekturen

  • 1. Service orientierte Architekturen VU Wissenstechnologien WS 2007/08 Werner Klieber wklieber@knowcenter.at http://www.know-center.at © Know-Center - gefördert durch das Kompetenzzentrenprogramm
  • 2. Inhalt Services/WebServices Service orientierte Architekturen Einschränkungen 2 http://www.know-center.at November 2007 © Know-Center
  • 3. Was sind (Web) Services? Definition von Service: Eine Applikation-Komponente, die Information zur Verfügung stellt oder Daten transformiert. Ein Service muss immer auf einem Rechner ausgeführt werden und kann daher eindeutig adressiert werden. Implementierung eines Services kann über mehre Rechner verteilt werden, indem andere Services eingebunden werden Ein Service soll möglichst autonom und unabhängig arbeiten um eine lose Kopplung von Systemmodulen zu ermöglichen. Verwenden von plattformunabhängigen und sprachunabhängigen Protokollen Web Services Verwenden Web-Technologien (XML) und sind über das Web erreichbar. Web Services stellen ein Interface zur Verfügung, das von 3 anderen Programmen aufgerufen werden kann. http://www.know-center.at November 2007 © Know-Center
  • 4. Finden von Web Services Server Lookup (Service beschreibung) Find-bind-execute WSDL Client pattern. (Stub) SOAP Webservice (Skeleton) Service lookup auf UDDI (Universal Description, Discovery and Services finden Kennt das Service Integration) Servern UDDI 4 http://www.know-center.at November 2007 © Know-Center
  • 5. Standards und Spezifikationen 1 Definition von Service: Standards werden vom W3C Konsortium entwickelt. WS-I: Industrie Organisation um Web Service Interoperabilität zwischen Plattformen, Betriebssystemen und Programmiersprachen zu gewährleisten. WSDL: Web Service Description Language. Ist ein XML Format um Web Services technisch als Set von Operationen basierend auf Messages zu beschreiben. SOAP: Simple Object Access Protocoll. Ist ein one-way, stateless Protokoll um Daten in XML von einem Sender zu einem Empfänger zu transportieren. In SOAP 1.2 können 5 auch Messages an mehre Empfänger gesendet werden. http://www.know-center.at November 2007 © Know-Center
  • 6. Standards und Spezifikationen 2 Definition von Service: UDDI: Universal Description, Discovery and Integration Spezifikation. UDDI ist ein Registry Service für Web Services als auch anderen elektronischen Services. SAML: Security Assertion Markup Language vom OASIS- Konsortium. Ist ein XML-basiertes Framework für Benutzerauthentifizierung und sicherheitsbezogene Informationen zu beschreiben und zu übertragen. XKMS: XML Key Management Specification. Verteilen und Registrieren von Public-Keys. REST (Representational State Transfer). Anderer Ansatz 6 zu WSDL/Soap. http://www.know-center.at November 2007 © Know-Center
  • 7. Überblick Standards 7 (http://www.innoq.com/soa/ws-standards/poster/WS-Standards-2007-02-medium.jpg)‫‏‬ http://www.know-center.at November 2007 © Know-Center
  • 8. WebServices mit WSDL und SOAP <wsdl> <!-- define a operation --> <wsdl:operation name=quot;GetUserDataquot;> <wsdl:input message=quot;es:GetUserDataRequestquot;/> <wsdl:output message=quot;es:GetUserDataResponsequot;/> </wsdl:operation> <!-- Request --> <xsd:element name=quot;GetUserDataRequestquot;> <xsd:complexType><xsd:sequence> <xsd:element name=quot;usernamequot; type=quot;stringquot;/> <xsd:element name=quot;rolequot; type=quot;stringquot;/> </xsd:sequence></xsd:complexType> </xsd:element> <!-- Response --> <xsd:element name=quot;GetUserDataResponsequot;> <xsd:complexType><xsd:all> <xsd:element name=quot;emailquot; type=quot;stringquot;/> </xsd:all></xsd:complexType> </xsd:element> <wsdl> 8 http://www.know-center.at November 2007 © Know-Center
  • 9. WebServices mit WSDL und SOAP <soap:Envelope> <soap:Body xmlns:m=quot;http://www.example.org/userdataquot;> <m:GetUserData> <m:email>user@example.org</m:email> </m:GetUserData> </soap:Body> </soap:Envelope> 9 http://www.know-center.at November 2007 © Know-Center
  • 10. REST (Representational State Transfer)‫‏‬ WebServices mit SOAP: Ursprünglich um Standardisierte Funktionalitäten in Web-Seiten einzubinden. Werden aber als Middleware-Komponenten verwendet. REST als Technologie um WebServices ohne Programierung zu verwenden. Inputparameter werden in Web-Url mitgeschickt. Ergebnis ist ein XML Dokument. Ergebnisse können zum Beispile mit Stylesheet Transformationen eigene Web-Seiten eingebaut werden. REST ist statless. Wie das Ergebnis einer Anfrage repräsentiert wird, ist bei REST nicht spezifiziert. Komposition: Es gibt eigentlich keine REST-Services sondern nur Resourcen. Diese sind über URIS eindeutig im Web Lokalisierbar und stehen anderen Anwendungen zur Verfügung 10 http://www.know-center.at November 2007 © Know-Center
  • 11. REST Beispiel (Amazon Resultat)‫‏‬ <ProductInfo> <Request> <Args> omitted for clarity</Args> </Request> <TotalResults>828</TotalResults> <TotalPages>83</TotalPages> <Details url=quot;http://www.amazon.com/...quot;> <Asin>0596004508</Asin> <ProductName>Mac OS X: The Missing Manual...</ProductName> <Catalog>Book</Catalog> <Authors> <Author>David Pogue</Author> </Authors> <ImageUrlSmall>http://images.amazon.com/...</ImageUrlSmall> <ImageUrlMedium>http://images.amazon.com/...</ImageUrlMedium> <OurPrice>$20.97</OurPrice> </Details> insert nine more books here </ProductInfo> 11 http://www.know-center.at November 2007 © Know-Center
  • 12. Inhalt Services/WebServices Service orientierte Architekturen Einschränkungen 12 http://www.know-center.at November 2007 © Know-Center
  • 13. Service Oriented Architecture (SOA) SOA wird verwendet um Services zu verwalten. Realisierungen durch ESB (Enterprise Service Bus) Ist business orientiert (B2B) 13 http://www.know-center.at November 2007 © Know-Center
  • 14. Service Oriented Architecture - Motivation case studies SOA verspricht:Technologieunabhängigkeit, Wiederverwendbarkeit, Flexibiltät, Kostenersparniss Applikationen besteht aus zusammengesetzten, wieder verwendbaren Komponenten. (Service oriented Computing Paradigma). Kümmert sich um Sicherheit, Workflow, Routing, Monitoring, Performance, … 14 http://www.know-center.at November 2007 © Know-Center
  • 15. Services zusammenschalten (orchestrieren) Kernidee ist eine lose Kopplung einzelner Services. Services sollen autonom, isoliert und entkoppelt sein. “Contracts” definieren was Services machen (Verträge). “Policies” wie sie interagieren sollen (Richtlinien). Services dynamisch anbinden Applikation (Service) (dezentrale Steuerung). Aggregatons Aggregatons BPEL (Business Process Execution Service Service Language): XML-Standart um Prozesse zu modellieren. Compent Compent Compent Service Service Service 15 http://www.know-center.at November 2007 © Know-Center
  • 16. Choreography & Orchestration Orchestration Aggregation von verschiedenen Services zu Workflows. Beinhaltet viele Low-Level Engineering-Tasks wie Transaktionsmangement, Datenkonvertierungen, … Choreography Wie man mit dem Service interagiert Konsumation der Funktionalität Ziel: Automation von Choreography & Orchestration 16 http://www.know-center.at November 2007 © Know-Center
  • 17. Choreography & Orchestration (Bsp.)‫‏‬ Choreography Orchestration 17 from W3C-Workshop-Talk (John Domingue, DERI) http://www.w3.org/2005/04/FSWS/Submissions/1/wsmo_v10.pdf http://www.know-center.at November 2007 © Know-Center
  • 18. Limitierungen SOA-Inseln Sumpf/Wüsteneffekte Automatisches Orchestrieren von Services und Choreographie ist problematisch 18 http://www.know-center.at November 2007 © Know-Center
  • 19. Ende 19 http://www.know-center.at November 2007 © Know-Center