Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen.

Slides:



Advertisements
Ähnliche Präsentationen
GWT - google Web Toolkit
Advertisements

Basis-Architekturen für Web-Anwendungen
Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS
WS06/07Prof. Dr. Andreas Schmietendorf1 Programmierung von Client/Server- Anwendungen Übersicht zur Vorlesung.
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Web Services und Workflow-Steuerung
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Cassey - Common Answer Set Evaluation sYstem Jean Gressmann Benjamin Kaufmann Robert Lenk.
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
Kommunikation in verteilten Systemen (Middleware)
Einführung XML XML Einführung Andreas Leicht.
Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.
XML in Client-Server und GRID Architektur
JAVA RMI.
Introducing the .NET Framework
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Seminar Internet Technologien
Remote Methode Invocation (RMI)
Überlegungen zur Architektur eines Fachinformations-Netzwerkes am Beispiel des CeGIM Mehrwert ist es nicht nur, Daten von ihren Quellen zu den Nutzern.
JavaScript Object Notation
Die .NET Common Language Runtime
Die .NET Common Language Runtime
Web Services Die Zukunft netzbasierter Applikationen iternum GmbH Alexanderstraße Frankfurt/Main
ArcGIS als WPS Server Aktueller Stand der Umsetzung
Integration heterogener verteilter Systeme mit WS-BPEL – ein Praxisbeispiel Dr. Wolf-Dieter Heinrichs.
Webservice Grundlagen
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
UNIVERSITÄT ZU KÖLN HISTORISCH-KULTURWISSENSCHAFTLICHE INFORMATIONSVERARBEITUNG REUSABLE - CONTENT SS 2013 MARIA WAGNER ReST.
Grundlagen: Client-Server-Modell
Java für Fortgeschrittene
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 2013 Kapitel 6 Folie 2 WCF Data Services (1) s.a.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
Management- und Web Services- Architekturen
Einführung in Web Services Web Services in der Praxis
ATLAS2000 Modellintegration in digitalen Atlanten Konzepte und Lösungsvorschläge am Beispiel ATLAS2000.
Reinhold Rumberger Web Services.
SharePoint 2013 Web Services
SOAP.
Software Design Patterns
Vortrag - Diplomarbeiten (HS I)
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
© Zühlke 2013 Romano Roth Workshop 6 (ws6C) native Entwicklung für mobile Geräte Lektion 2: Service 18. February 2013 Folie 1 von 19.
Microsoft.NET - Plattform Kurzer Überblick Vergleich mit Java Von Thomas Zahn Januar 2001.
Web Services als Remote Content Provider in Portalumgebungen Vorstellung und Diskussion des Themas Präsentation des Prototypen Konzeption und prototypische.
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
EJB Architektur für große Web - Applikationen Gerald Weber
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
Cloud Entwicklung: Web Services
Pascal Brunner Uniklinik RWTH Aachen Institut für Medizinische Informatik Integration von ImageJ- und Matlab- Servern in das Electronic Data Capture klinischer.
Generic Enabler Felix Holzäpfel-Stein, Aachen Generische Komponenten im Cloudkontext.
Entwurf, Implementierung und Test eines Java – Web Services als Kommunikationsschnittstelle für Webapplikationen mit Funktionen.
Webbasierte Kommunikation am Beispiel REST Seminarvortrag von Heiko Overath.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
© 2012 TravelTainment Einführung in Enterprise JavaBeans Seminarvortrag von Ralf Penners Folie 1 von 34.
Datentransformation mit XSLT Seminarvortrag von Johannes Engels.
1. Betreuer: Prof. Dr. Jörg Striegnitz 2. Betreuer: Dr. Martin Schindler Kontextsensitive Autocompletion für Klassendiagramme in der UML/P Florian Leppers.
© WZL/Fraunhofer IPT Eine Gegenüberstellung von Websockets und RESTful Web Services Seminarvortrag von Lucie Mades.
Webservices SOAP und REST Nicole Fronhofs 1. Betreuer: Prof. Dr. Volker Sander 2. Betreuer: B. Sc. Sebastian Olscher.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Web Services Dr. Wolfgang Wörndl
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
© 2008 TravelTainment The Amadeus Leisure Group Webanwendungen mit Java - HttpServlets 17.Dezember 2010 Sebastian Olscher Erstprüfer: Hon.-Prof. Dr. H.
Schnittstellen für Verteilte System mit J2EE Frank Schwichtenberg SourceTalk 2008 Göttingen,
SOAP - WSDL Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 2 Hauptseminar: Virtuelle.
SE: Systementwurf, © Till Hänisch 2003 Systemarchitektur nach Sommerville, Software Engineering, Addison Wesley.
Verteilte Anwendungen: J2EE
Prof. Dr.-Ing. Franz-Josef Behr Geodaten und Datenmodell
 Präsentation transkript:

Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 2 Gliederung Serialisierung 2. Webservice Architekturen 3. Feature-Vergleich 4. Testergebnisse 5. Motivation 1. Zusammenfassung und Ausblick6.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 3 Enterprise Information Systems (EIS) Application Server + DB Client :A :B :A‘:B‘ Client Middleware :A :B :A‘:B‘ Optimierung der Kommunikation in Enterprise Information Systems structured data (e.g. XML, JSON) Technology: Web Services (e.g. RPC, REST, …)

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 4 Gliederung Serialisierung 2. Webservice Architekturen 3. Feature-Vergleich 4. Testergebnisse 5. Motivation 1. Zusammenfassung und Ausblick6.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 5 Serialisierung serialized file p:Person name = „Kai“ mp:MobilePhone deserialize serialize OD  Bildet strukturierte Daten in ein anderes Format ab  Speicherung und Übertragung os = „ANDROID“

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 6 Serialisierungsformate & -bibliotheken  eXtensible Markup Language (XML) textuelle Form  lesbar für Menschen Begin- und Endtags  schwergewichtig weit verbreitet und stark toolunterstützt ca. 80% Overhead Anna 35 Peter Hans 35 Peter Hans

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 7 Serialisierungsformate & -bibliotheken  JavaScript Object Notation (JSON) textuelle Form  lesbar für Menschen keine redundanten Tags  leichtgewichtig gültiger JavaScript-Code  Protocol Buffers (protobuf) Konzept Binäres Format  nicht lesbar für Menschen Spezifizierungssprache für Schemata Klassen enthalten Serialisierungsmechanismen { "name": "Anna", "age": 35, "children": ["Peter", "Hans"] } message person { required string name = 1; optional int64 age = 2; repeated string children = 3; }

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 8 Gliederung Serialisierung 2. Webservice Architekturen 3. Feature-Vergleich 4. Testergebnisse 5. Motivation 1. Zusammenfassung und Ausblick6.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 9 Webservice Architekturen  Webservice (WS) Kommunikation zwischen Komponenten Netzwerk Server-Client Server Provide WS (REST, RPC) Client Network Data transfer

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 10 Realisierung von Webservices  Representational State Transfer (REST) Ressourcenorientierter Architekturstil HTTP-Protokolle Modularität und Skalierbarkeit  Remote Procedure Call (RPC) Funktionen im Server haben eine ID Remote-Objekt wird lokal gebunden Stub kapselt Komplexität  Enterprise JavaBeans (EJB) – Session Bean Realisierung des RPC-Mechanismus Java-EE Server CORBA (Common Object Request Broker Architecture) definiert Protokolle und Dienste

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 11 Gliederung Serialisierung 2. Webservice Architekturen 3. Feature-Vergleich 4. Testergebnisse 5. Motivation 1. Zusammenfassung und Ausblick6.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 12 Feature-Vergleich: Datenaustauschformate LesbarkeitVerwendungAustauschErweiterbar- keit PerformanzZusätzl. Features JAXB +o----- GSON ++o+-oo Jackson ++o--+ Protobuf Java-Ser

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 13 Objektgraphen (OG) … … …  Tiefer OG Alle Bibliotheken  Breiter OG Alle Bibliotheken  Zyklischer OG Jackson und Java-Serialisierer  Zwei eingehende Referenzen Jackson, Java-Serialisierer und protobuf

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 14 Feature-Vergleich: Webservice Architekturen  Ressourcen versus Aktionen SkalierbarkeitSicherheitKopplungPerformanz RESTzustandslosalle HTTP- Methoden loseCaching RPC (SOAP) zustands- behaftet HTTP-Poststarkzusätzliche Protokolle

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 15 Gliederung Serialisierung 2. Webservice Architekturen 3. Feature-Vergleich 4. Testergebnisse 5. Motivation 1. Zusammenfassung und Ausblick6.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 16 Serialisierung: Tiefer Objektgraph  Dateigröße in Bytes  lineares Wachstum  Java-Serialisierer bei nur einem Objekt am größten

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 17 Serialisierung: Tiefer OG  Zeit in ms  lineares Wachstum  Schwankungen durch Messungenauigkeiten

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 18 Serialisierung: Breiter OG  Dateigröße: ähnliches Verhalten wie bei tiefem OG  Zeit: protobuf um Faktor 10 schneller als Java-Serialisierer Jackson, GSON und JAXB ca. gleich schnell

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 19 Deserialisierung: Zeit  tiefer OG  lineares Wachstum  protobuf am schnellsten  Jackson, GSON und Java-Serialisierer in etwa gleich schnell  JAXB ca. 13 mal langsamer als protobuf

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 20 Webservice Architekturen: EJB vs REST CORBA- Java- Ser. REST-JSONREST-Protobuf POST ms ms GET ms ms RPC ms-- Initialisierungs- phase ms ms  REST-Lookup deutlich schneller  REST-Methodenaufrufe schneller als RPC-Methodenaufruf

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 21 Gliederung Serialisierung 2. Webservice Architekturen 3. Feature-Vergleich 4. Testergebnisse 5. Motivation 1. Zusammenfassung und Ausblick6.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 22 Zusammenfassung und Ausblick  Vorteile und Nachteile verschiedener Formate  Performanz, Skalierbarkeit: REST  größere Kopplung, Erweiterbarkeit: RPC Themen für weiterführende Arbeiten interessant  weitere Serialisierungsbibliotheken (Thrift, Avro)  weitere Webservice Architekturen  Fokus auf interne Datenstruktur bei der Serialisierung

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 23 Ich danke für Ihre Aufmerksamkeit.

Seminar Ben Mainz Software Engineering RWTH Aachen , Folie 24 Literaturverzeichnis  Colin J. Ihrig: JavaScript Object Notation. Apress,  Erik T. Ray: Learning XML. O'Reilly,  Stefan Tilkov: REST und HTTP: Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag,  Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides: Design Patterns: Elements of Reusable Object-oriented Software. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA,  google protobuf website: november  GSON - google json website: november