Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
144 lines (99 sloc) 5.4 KB

REST


Welche Ebenen hat ein Informations System?

  • Presentation Layer
    • Kommuniziert mit externen Entitäten
  • Application logic layer
    • Operationen welche von extern kommen werden hier verarbeitet
  • Resource management layer
    • handelt die Daten von einer Applikation
    • z. B. Datenbank

Layers{ width=250px }


Was ist REST?

  • Representational State Transfer (abgekürzt REST, seltener auch ReST) bezeichnet ein Programmierparadigma für verteilte Systeme, insbesondere für Webservices.
  • Der Zweck von REST liegt schwerpunktmäßig auf der Maschine-zu-Maschine-Kommunikation. REST stellt eine einfache Alternative zu ähnlichen Verfahren wie SOAP und WSDL und dem verwandten Verfahren RPC dar.
  • Bei REST schickt man einen Request an eine zentrale Stelle und bekommt ein Dokument (z. B. XML) zurück.
  • Kurz: REST bietet einen einfachen weg, um mit Webservices (Rechnernetzen) zu kommunizieren.
  • Via HTTP-Operationen wie GET, POST, PUT und DELETE werden states manipuliert
  • Rest ist kein Standard

Hier ein Beispiel, wie ein REST-System funktionieren kann:

Rest-System


Was sind Webservices?

Ein Webservice (auch Webdienst) ermöglicht die Maschine-zu-Maschine-Kommunikation auf Basis von HTTP oder HTTPS über Rechnernetze wie das Internet.


Haben Webservices ein GUI?

Nein. Sie sind teil einer Web Application, haben aber kein GUI.


Welche 3 grundsätzlichen Standards für Web services gibt es?

  • SOAP (by W3C)
    • Ursprünglich «Simple Object Access Protocol»
    • Message exchange format (Nachrichtenaustauschformat)
  • WSDL (by W3C)
    • Web Service Description Language
    • Beschreibt Webservice Schnittstellen
    • Standard zur Beschreibung des Austauschs zwischen Web Service Provider und Web Service Requestor
  • UDDI (by OASIS)

Welche technischen Implementationen gibts für Web Services?

  • SOAP/WSDL
  • REST

Was ist SOAP?

  • SOAP (ursprünglich für Simple Object Access Protocol) ist ein Netzwerkprotokoll, mit dessen Hilfe Daten zwischen Systemen ausgetauscht und Remote Procedure Calls durchgeführt werden können.
  • SOAP ist immer XML

Was ist WSDL?

  • Die Web Services Description Language (WSDL) ist eine plattform-, programmiersprachen- und protokollunabhängige Beschreibungssprache für Netzwerkdienste (Webservices) zum Austausch von Nachrichten auf Basis von XML.
  • XML-Basiert

Was ist UDDI?

  • Universal Description, Discovery and Integration (UDDI) ist ein Begriff aus dem Umfeld der serviceorientierten Architektur (SOA) und bezeichnet einen standardisierten Verzeichnisdienst, der die zentrale Rolle in einem Umfeld von dynamischen Web Services spielen sollte.
  • Gelbe Seiten für Web Services
  • Schema fürs publizieren und finden von Web Servies

Was sind Distributed Information Systems?

  • Distributed Information Systems = verteiltes System. Ein Zusammenschluss unabhängiger Computer, die sich für den Benutzer als ein einziges System präsentieren.
  • Kommunikation findet übers Netzwerk statt

Was sind Distributed System Types / Welche Arten von verteilten Systemen gibt es?

Es gibt zwei grundsätzliche Typen von Distributed Systemen:

  1. Request/Response type system

    • «call & return» type systems
    • synchron
    • Operationen haben input Parameter und output/return Werte
  2. Message passing type systems

    • «document passing» type systems, data oriented
    • asynchron
    • Messages werden zusammengebaut und ans Ziel gesendet

Was gibt es für Architekturstile?

Architekturstile sind «design patterns» (Entwurfsmuster) für die Struktur und Verbindung innerhalb und zwischen Softwaresystemen.

Wichtige 3 sind:

  • Object-Oriented Architectural Style
  • Resource-Oriented Architectural Style
  • Service-Oriented Architectural Style (SOA)

Vergleich


Was ist Service-Oriented Computing?

SOC umfasst verschiedene Techniken und Konzepte zur Erstellung von modularen Software-Lösungen auf Basis von Software-Services.

Eine wesentliche Grundlage dieser Konzepte stellen Serviceorientierte Architekturen (SOA) dar.
Jedoch schließt SOC darauf aufbauende Lösungen oder Lösungsplattformen (wie z. B. Cloud Computing, Utility Computing …) mit ein.


Welche Rolle nimmt eine Service Registry ein?

Vermittelt zwischen Service Provider und Service Requestor.

Service Registry{ width=350px }


Was bedeutet «The REST way of Implementing the Web Services»?

The Client references a Web resource using a URL.

  • A representation of the resource is returned (in this case as an HTML document). The representation (e.g., Boeing747.html) places the client application in a state.
  • The result of the client traversing a hyperlink in Boeing747.html is another resource is accessed.
  • The new representation places the client application into another state. Thus, the client application changes (transfers) state with each resource representation.

Was ist JAX-RS?

Bei der Java API for RESTful Web Services, kurz JAX-RS, handelt es sich um die Spezifikation einer Programmierschnittstelle (API) der Programmiersprache Java, die die Verwendung des Software-Architekturstils Representational State Transfer (REST) im Rahmen von Webservices ermöglicht und vereinheitlicht.


Was ist RPC?

  • Remote Procedure Call («Aufruf einer entfernten Prozedur») ist eine Technik zur Realisierung von Interprozesskommunikation.
  • Ist in XML geschrieben
You can’t perform that action at this time.