Service orientierte
           Architekturen
           VU Wissenstechnologien
                       WS 2007/08
         ...
Inhalt


   Services/WebServices
   Service orientierte Architekturen
   Einschränkungen




                             ...
Was sind (Web) Services?


Definition von Service:
    Eine Applikation-Komponente, die Information zur Verfügung
    stel...
Finden von Web Services


                                                 Server

                                Lookup
...
Standards und Spezifikationen 1


Definition von Service:
    Standards werden vom W3C Konsortium entwickelt.
    WS-I: In...
Standards und Spezifikationen 2


Definition von Service:
    UDDI: Universal Description, Discovery and Integration
    S...
Überblick Standards




                                                                                             7
(ht...
WebServices mit WSDL und
SOAP

 <wsdl>
   <!-- define a operation -->
   <wsdl:operation name=quot;GetUserDataquot;>
     ...
WebServices mit WSDL und
SOAP


<soap:Envelope>
  <soap:Body
       xmlns:m=quot;http://www.example.org/userdataquot;>
   ...
REST (Representational State Transfer)‫‏‬



   WebServices mit SOAP: Ursprünglich um Standardisierte
   Funktionalitäten ...
REST Beispiel (Amazon Resultat)‫‏‬


<ProductInfo>
  <Request>
  <Args> omitted for clarity</Args>
  </Request>
 <TotalRes...
Inhalt


   Services/WebServices
   Service orientierte Architekturen
   Einschränkungen




                             ...
Service Oriented Architecture
(SOA)


   SOA wird verwendet um Services zu verwalten.
   Realisierungen durch ESB (Enterpr...
Service Oriented Architecture -
Motivation case studies


   SOA verspricht:Technologieunabhängigkeit,
   Wiederverwendbar...
Services zusammenschalten
(orchestrieren)


   Kernidee ist eine lose Kopplung einzelner
   Services. Services sollen auto...
Choreography & Orchestration


Orchestration
   Aggregation von verschiedenen Services zu Workflows.
   Beinhaltet viele L...
Choreography & Orchestration (Bsp.)‫‏‬



      Choreography                  Orchestration




                          ...
Limitierungen



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




                                                      19
                                http://www.know-center.a...
Nächste SlideShare
Wird geladen in …5
×

Service-orientierte Architekturen

734 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
734
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
30
Aktionen
Geteilt
0
Downloads
16
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Service-orientierte Architekturen

  1. 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. 2. Inhalt Services/WebServices Service orientierte Architekturen Einschränkungen 2 http://www.know-center.at November 2007 © Know-Center
  3. 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. 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. 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. 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. 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. 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. 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. 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. 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. 12. Inhalt Services/WebServices Service orientierte Architekturen Einschränkungen 12 http://www.know-center.at November 2007 © Know-Center
  13. 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. 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. 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. 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. 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. 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. 19. Ende 19 http://www.know-center.at November 2007 © Know-Center

×