Service components and distribution with OSGi Seminar: Multimedia- und Internetsysteme Paul Hübner | 10.01.2011 Bildquellen : [1]

Slides:



Advertisements
Ähnliche Präsentationen
interaktiver Web Service Workflows
Advertisements

HTML5 Die Zukunft von OpenROAD
Cloud42 Dominik Muhler Seminar StuPro cims cims.
1 Gerardo Navarro Suarez BPM Suite. 2 Quelle: camunda Services GmbH Das Warum hinter Activiti Problem bestehender BPMS: Starker Fokus auf das Business.
Programmieren im Großen von Markus Schmidt und Benno Kröger.
ServiceGlobe: Flexible and Reliable Web Service Execution Markus Keidl, Stefan Seltzsam und Alfons Kemper Universität Passau Fakultät für Mathematik und.
Microsoft Referenzarchitekturen- Infrastruktur für Connected Systems
Entwicklung und Einsatz von Smart Client-Anwendungen Jens Häupel Developer Evangelist Microsoft Deutschland GmbH Dirk Primbs.
Windows Vista für Entwickler
Datenbankzugriff im WWW (Kommerzielle Systeme)
Design by Contract with JML - Teil 2
Seite 1 Reinhard Huber Anna Völkl ITTBA Apache Tomcat Anna Völkl, Reinhard Huber
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
ATHOS Benutzertreffen 12. November Auswerteserver Glashütten, 12. November 2008 HighQSoft GmbH, Andreas Hofmann
ATHOS Benutzertreffen 12.November QUARTZ – Scheduling und Workflow Glashütten, 12. November 2008 HighQSoft GmbH, Karl Hildebrand
AP 04/03 Komponentenprogrammierung und Middleware Vorlesung + Projekt 4 SWS mit Praktikum (6 benotete Leistungspunkte) –Studentische Vorträge in der 2-ten.
Architektur von Renardus Göttingen State and University Library, Germany (SUB) Frank Klaproth The Academic Subject.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
„Component and Aspect Engineering“
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Seminar Web-Engineering Nina Aschenbrenner / Ruben Jubeh 1 FG Software Engineering Software Engineering Seminar Web Engineering Seminar des Fachgebiet.
Inhalte und Maßnahmen eingegeben haben,
Arbeitskreis Software Technologien FH Konstanz 15. Oktober 1999
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
OGSI und Jini im Focus Sebastian Albrecht. 2 Gliederung OGSI Einordnung neue Komponenten Zukunft Jini Entstehung Architektur Lookup Service Bewertung.
Divide and Conquer Eclipse RCP und Spring in verteilten Anwendungen Stefan Reichert | Lufthansa Systems Benjamin Pasero | IBM Rational.
01 Installation / Support. © beas group 2011 / Page 2 This documentation and training is provided to you by beas group AG. The documents are neither approved.
Status eSciDoc Malte Dreyer eSciDoc Hauptaktivitäten in 2006 Abstimmung mit den Zielgruppen Funktionale Anforderungserhebung mit.
EDC Entwicklerforum Geoprocessing im Web 18. Juli 2013 Benjamin Proß Ein erweiterbarer WPS Client für ArcMap.
08. September 2010Entwicklungsstrategien in Liferay 1 Christian Krause, URZ FSU Jena, IDM-Arbeitsgruppe.
Google App Engine Microsoft Windows Azure
Service components and distribution with OSGi Seminar: Multimedia- und Internetsysteme Paul Hübner | Bildquellen : [1]
Sanjay Patil Standards Architect – SAP AG April 2008
Aurich – Jonas Jacobi OSGi Tutorial Aurich – Jonas Jacobi Das OSGi Service Framework Dynamisches Modulsystem für Java Dynamische.
...ich seh´es kommen !.
Management- und Web Services- Architekturen
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Generalisierung/Spezialisierung Subtypisierung/Vererbung
Ressourcen in Process-Aware Information Systems Paul Hübner | | DBIS Seminar Betreuer : Andreas Lanz Quelle : Seven Fallacies.
Developer Day Webseiten auf Windows Azure hosten Britta Labud bbv Software Services AG Roland Krummenacher bbv Software Services AG.
Cooperation unlimited © Zühlke August 2008 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
MVVM in Windows 8 und Windows Phone 8
PresenterCompanyContact Windows Azure ASP.NET Web-Anwendungen schnell und zuverlässig bereitstellen.
Auslegung eines Vorschubantriebes
Web Services Semistrukturierte Daten 1 – Gruppe 6.
XML IV: Cocoon 2.
Spring Framework.
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
Management- und Web Services- Architekturen
© Talend Apache Camel Christian Schneider Sopera GmbH Talend´s Application Integration Division
JavaServer Faces Urs Frei. Inhalt JSF Funktionsweise Rückblick JSP Bestandteile von JSF So einfach ist die Anwendung (Beispiel) Eclipse im Einsatz (Entwicklungsumgebung)
Web Services in.NET und die.NET My Services 14. November Web Services in.NET und die.NET My Services Mario Ehrlicher Senior Consultant Xuccess
Analyseprodukte numerischer Modelle
Einführung in Web Services Web Services in der Praxis
Ressourcen in Process-Aware Information Systems Paul Hübner | | DBIS Seminar Betreuer : Andreas Lanz.
Ressourcen in Process-Aware Information Systems Paul Hübner | | DBIS Seminar Betreuer : Andreas Lanz Quelle : Seven Fallacies.
Service components and distribution with OSGi Seminar: Multimedia- und Internetsysteme Paul Hübner |
© Talend Apache Camel Christian Schneider Sopera GmbH Talend´s application integration division
01-1-Anfang. 01a-1-Vortrag-Inhalt 14-4-Gründe-Masterplan.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Web Services als Remote Content Provider in Portalumgebungen Vorstellung und Diskussion des Themas Präsentation des Prototypen Konzeption und prototypische.
1 Lutz Ullrich SOA – serviceorientierte Architektur SOA – Was ist das?
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
Verteilte Anwendungen: J2EE
Apache Camel Christian Schneider
Jakarta Struts Quasi-Standard für JSP-basierte Entwicklung: Jakarta Struts Key Features von Struts: Implementierung des Action-Command-Pattern („Model.
Remote Method Invocation
 Präsentation transkript:

Service components and distribution with OSGi Seminar: Multimedia- und Internetsysteme Paul Hübner | Bildquellen : [1] [2]

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 2 Inhalt OSGi Einführung Service Component Models OSGi für Verteilte Systeme Zusammenfassung

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 3 OSGi Architektur Quelle: OSGi 4.2 Core Spezifikation, Seite 1-332, Abbildung 1

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 4 OSGi Architektur Quelle: OSGi 4.2 Core Spezifikation, Seite 1-332, Abbildung 1 Komponente = Bundle = JAR OSGi Framework JVM

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 5 OSGi Bundle Lebenszyklus Quelle: OSGi 4.2 Core Spezifikation, Seite , Abbildung 4.28

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 6 OSGi Servicelayer, SOA Pattern : Publish-Find-Bind Service Registry Service Provider Service Requestor Publish Find Bind Auch Services haben einen Lebenszyklus

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 7 Inhalt OSGi Einführung Service Component Models OSGi für Verteilte Systeme Zusammenfassung

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 8 Service Orientierte Entwicklung mit OSGi Probleme: Kopplung an das OSGi Framework Wiederverwendbarkeit Komplexe Implementierung eines nicht anwendungsspezifischen Aspektes Einfachheit, Fehleranfälligkeit, …

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 9 Lösung : Service Component Models (SCM) Service Component Model: –Service Vertrag zwischen OSGi Bundles Was muss ein Service Component Model leisten? –Keine OSGi APIs im Quellcode der eigenen Anwendung d.h. auch keine Activator Klasse –Definition von Services nicht im Quellcode sondern: In XML Dateien oder mit Java Annotationen Service = Java Interface, Service Impl. = Java Bean –Service Referenzen werden durch SCM verwaltet Einschließlich der Reaktionsmöglichkeiten auf Service Dynamik

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 10 Service Component Models - Übersicht Declarative Services Specication Blueprint Container Specication (Spring DM) Apache iPOJO (inject POJO) Google Guice & Peaberry

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 11 Declarative Services (DS) Seit Version 4.1 Teil der OSGi Compendium Spec. XML Definition für Services & Service Referenzen Definiert durch Service-Component Manifest Eintrag –Default Ordner im Bundle: OSGI-INF/*.xml Bestandteile: Service Component Runtime OSGi Framework Instanz Service Referencen Bundle Service Definitionen Bundle Service Vertrag Bundle … consume provide Implementiert als OSGi Bundle Bundels werden um Service XML Definition erweitert

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 12 Blueprint Container (Spring DM) Seit Version 4.2 Teil der OSGi Compendium Spez. Entstanden aus Spring Dynamic Modules (V. 2.0) Definiert durch Bundle-Blueprint Manifest Eintrag –Default Ordner im Bundle: OSGI-INF/blueprint/ Blueprint Container Blueprint Bundle component instances … Blueprint XML service reference service Blueprint Container Listener Blueprint Extender Blueprint Container Impl Blueprint Bundle … Implementiert in 3 OSGi Bundles, weitere Bundles für Spring erforderlich!

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 13 Apache iPOJO (inject POJO) Vorreiter in Sachen OSGi SCM Beeinflusste Declarative Services & Blueprint Container Ähnlich Blueprint (Spring DM): Trennung von Service Impl. & SCM Aspekten Apache Projekt, nicht im OSGi Standard Schnellere Entwicklungs- und Release-Zyklen Unterschiede: Konfiguration auch über ConfigureAdmin Service Verbindung zwischen Metadaten und POJO zur Build-Zeit

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 14 Google Guice & Peaberry Google Guice als Dependency Injection Framework Guice basierend auf Java Annotationen Peaberry ist eine Erweiterung für Guice Ermöglicht mit speziellen Annotation : –Das Erstellen von OSGi Service Objekten –Das Referenzieren von OSGi Services –Das Interagieren mit dem Service/ Bundle Lebenszyklus, d.h. Umgang mit OSGi Service Dynamic

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 15 Service Component Models Review Anzahl Bundles Einsatz- bereich Release- zyklus Version Declarative Services 1Eclipse Plattfom Integration OSGi Spez. 1.1 Blueprint Container 3 (13)EnterpriseOSGi Spez. 1.0 (2.0) Apache iPOJO 1Performancekurz1.6.8 Google Guice & Peaberry 1 (2)Java Annotation Verfechter ?1.1.1

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 16 Inhalt OSGi Einführung Service Component Models OSGi für Verteilte Systeme Zusammenfassung

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 17 OSGi für Verteilte Systeme: Anforderungen Aus der SOA im Kleinen wird eine echte SOA –Betreiben von OSGi Bundles ohne Anpassung –Veröffentlichen & nutzen von Service Verteiltes OSGi Famework Verteiltes System Peers

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 18 Arten der Verteilung (1): Bundle Verteilung Bundles zur Serviceumsetzung werden verteilt Keine Netzwerk Kommunikation bei Service Aufruf Service Bundle Kopie Netz- werk Bundle Verteiltes OSGi System Peer 1Peer 2 Bundle Daten Austausch

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 19 Verteiltes OSGi System Arten der Verteilung (2): Automatische Proxy Generierung Bei 1. Service Aufruf wird ein Proxy Bundle erzeugt Netzwerk Kommunikation bei Service Aufruf Peer 1 Service Bundle Proxy Service Bundle Netz- werk Nachrichtenaustausch Peer 2

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 20 R-OSGi, Architektur Distributed R-OSGi: - Durch Verwendung von jSLP (Service Location Protocol) binäres Java Bytecode basiertes Kommunikationsprotokoll - Automatic Proxy Bundle Generation - Distributed Service Registry R-OSGi Peer 1Peer 2Peer n… Verteiltes OSGi System R-OSGi Bundle Lokales OSGi Framework

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 21 Remote Services Seit Version 4.2 Teil der OSGi Compendium Spez. Keine neue Middleware Technologie Sondern standardisierte Art & Weise solche in OSGi zu integrieren Wichtigste Bestandteile: –Distribution-Provider für Service Veröffentlichung über implementierungsspezifische Endpunkte –Discovery Dienst zum Registrieren und Auffinden von Remote Service Endpunkten

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 22 Remote Services & Distributed OSGi Service Modell Service ProviderService Consumer Service Registry Service Registry Provider Bundle Distribution Provider Consumer Bundle Distribution Provider Discovery Dienst Discovery Dienst horcht auf Interessenten von Remote Diensten horcht auf Registrierung von Remote Diensten sucht gibt bekannt ruft auf findet Dienst registriert Dienst OSGi Framework Discovery Protokoll UDDI, SLP Kommunikations- protokoll JMS, WS*,CORBA

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 23 OSGi als Middleware Plattform Lokales OSGi Framework –Standardisiertes Komponenten Laufzeitsystem –Service Plattform, einschließlich Standard Services (http, logging, …) Distributed OSGi (R-OSGi, Remote Services, …) –Schafft Ortstransparenz –Verteilte Service Registry –Verteilt lokale Komponenten Eignung Verteilter OSGi Systeme als Middleware Plattform

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 24 Inhalt OSGi Einführung Service Component Models OSGi für Verteilte Systeme Zusammenfassung

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 25 Evaluation: Service Component Models & Remoting Konzepte R-OSGiRemote Services (Apache CXF) Declarative Services++ Blueprint Container++ Apache iPOJO++ Google Guice & Peaberry +-

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 26 Zusammenfassung OSGi unterstützt Serviceorientierung OSGi Entwicklung ohne OSGi durch Service Component Models –Declarative Services, Blueprint, iPOJO, Peaberry OSGi als Middleware Plattform für Verteilte Systeme –R-OSGi: einfach & performant Embedded –Remote Services: komplex, Anbindung an Enterprise Welt, SOA

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 27 Ende Vielen Dank für die Aufmerksamkeit –Fragen ?

Multimedia- und Internetsysteme | Service components and distribution with OSGi Seite 28 Remote Services & Distributed OSGi, Architektur Lokale OSGi Frameworks Distributed OSGi ServiceConsumer Impl. ServiceConsumer Impl. ServiceProducer Impl. ServiceProducer Impl. Distribution Provider Impl. Distribution Provider Impl. to endpointendpoint import service export service service. exported.interface service. imported Quelle: OSGi 4.2 Compemdium Spezifikation, Seite 5-850, Abbildung 13.1, Überarbeitet