Propagation d événements entre passerelles OSGi



Documents pareils
Exposé Systèmes Réseaux

NFP111 Systèmes et Applications Réparties

Messagerie asynchrone et Services Web

MQPerf un outil de diagnostic en mode SaaS des performances optimales du MOM JORAM

Des solutions J2EE open source professionnelles adaptées à votre système d information d entreprise

Conception Exécution Interopérabilité. Déploiement. Conception du service. Définition du SLA. Suivi du service. Réception des mesures

JOnAS 5 Enterprise OSGi javaee compliant

Urbanisme du Système d Information et EAI

Serveur d'application à la juste taille

Algorithmique répartie

Fiche de l'awt Intégration des applications

NSY102. Conception de logiciels Intranet Introduction

Vers des intergiciels M2M

Enterprise portals : portails informatiques d entreprise

JOnAS 5. Serveur d application d

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

Présentation d'un MOM open-source

Mettez les évolutions technologiques au service de vos objectifs métier

Jeux Pervasifs. Mail: Web: Université de Nice - Sophia Antipolis

Applications distribuées: le retour du client "riche"

Plan du cours. Systèmes et applications asynchrones Middleware à message. Architecture distribuée. Objectifs du cours

Réplication des données

TD sur JMS ) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

Intégration de systèmes

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

L EAI. par la pratique. François Rivard. Thomas Plantain. Groupe Eyrolles, 2003 ISBN :

PROJET : ETNIC ESB JANUS. Guide technique : WS-Notification - Clustering. BULL Services et Solutions

Introduction aux intergiciels

Projet. But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables. Serveur de diffusion

Comment initialiser une démarche SOA

Table des matières Chapitre 1 Virtualisation, enjeux et concepts Chapitre 2 Ligne de produit XEN

Description de la formation

Nouvelles technologies pour l intégration : les ESB

JF SMA'14. A3 - Agent Anytime Anywhere. une plateforme à agents distribués Oct l'expertise middleware.

I-JVM: une machine virtuelle Java pour l isolation de composants dans OSGi

Infrastructure à Clé Publique (PKI Public Key Infrastructure)

Fiche Produit Announce

Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction

Le 09 et 10 Décembre 09

Prise en compte des ressources dans les composants logiciels parallèles

AMUE : PRISME - Référentiel des données partagées. 3 décembre 2009

Rapport de veille technologique

Conception des systèmes répartis

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Le modèle client-serveur

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors

RFID: Middleware et intégration avec le système d'information Olivier Liechti

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

Unite Connectivity Manager

Evidian IAM Suite 8.0 Identity Management

Présentation du ResEl

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

Intergiciel. et Construction d Applications Réparties

Java Naming and Directory Interface

WEA Un Gérant d'objets Persistants pour des environnements distribués

Projet EVO. Enabling Virtual Organizations

Projet ESB - Retour d expérience

Famille IBM WebSphere Application Server

Le produit universel de l export

Travail collaboratif. Glossaire

Introduction au Déploiement

MOM: Concepts & Applications

Bases Java - Eclipse / Netbeans

Les données (voix, vidéo, etc.) sont échangées à l aide du protocole RTP (Real-time Transport Protocol).


Présentation du modèle OSI(Open Systems Interconnection)

Architecture client riche Evolution ou révolution? Thomas Coustenoble IBM Lotus Market Manager

Fiche Produit IPS Pager

Fiche Produit Desktop Popup

ManageEngine Netflow Analyser

Les nouvelles architectures des SI : Etat de l Art

Ethernet Industriel Réseaux Ethway Coupleur Ethernet sur Automates Programmables. Plan. Contexte

Introduction à la plateforme J2EE

CheckPoint R76 Security Engineering niveau 2 (Cours officiel)

Administration d'infrastructures logicielles avec Jade

Classeur de suivi de l auditeur. Architecture et Ingénierie des Systèmes et des Logiciels

Software Application Portfolio Management

Java pour le Web. Cours Java - F. Michel

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

VPN TLS avec OpenVPN. Matthieu Herrb. 14 Mars 2005

Network musical jammin

Architecture d un service de partage de données modifiables sur une infrastructure pair-à-pair


Comment exploiter la standardisation de l'informatique pour en faciliter la gestion.

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Projet ENSIMAG 3A ILBI Infrastructure Logicielle pour les Bâtiments Intelligents

Plan. Présentation du logiciel Sympa Architecture La gestion des hôtes virtuels Listes avec inclusion des abonnés Les modules d authentification

Configuration du driver SIP dans ALERT. V2

Fusion : l interopérabilité chez Oracle

Fiche Produit Global Directory pour Jabber

Auto-évaluation Aperçu de l architecture Java EE

Architecture SOA Un Système d'information agile au service des entreprises et administrations

Configuration Interface for MEssage ROuting

Rendez-vous la liberté avec Rational Quality Manager

Introduction aux applications réparties

QU EST-CE QUE LA VISIOCONFERENCE?

Offre Référentiel d échange

Transcription:

Propagation d événements entre passerelles OSGi Didier Donsez*, Gaël Thomas (* puis +) * Université Joseph Fourier (Grenoble 1) IMA IMAG/LSR/ADELE (UMR CNRS 5526) + Université Pierre et Marie Curie (Paris 6) LIP6 SRC (UMR CNRS 7606) Didier.Donsez@imag.fr, Gael.Thomas@lip6.fr 1

Diapositive de résumé 2 Introduction Motivations (i, ii) Principes des ponts (i, ii, iii) Rappels Bus à messages Event Admin Service (i, ii) Conception des ponts Architecture Event Admin Pont (i, ii) Correspondances entre Event Admin et ponts Expérimentation et validation Event Admin Pont Ivy Event Admin Pont Flash Event Admin Pont JMS Conclusion and perspectives Q & A

Diapositive de résumé 3 Introduction Motivations (i, ii) Principes des ponts (i, ii, iii) Rappels Bus à messages Event Admin Service (i, ii) Conception des ponts Architecture Event Admin Pont (i, ii) Correspondances entre Event Admin et ponts Expérimentation et validation Event Admin Pont Ivy Event Admin Pont Flash Event Admin Pont JMS Conclusion and perspectives Q & A

Motivations (i) 4 Nombreuses applications distribuées orientées événements Applications de collecte de données (RFID, Capteurs) Médiation entre services (Enterprise Service Bus (ESB), ) Applications collaboratives (CSCW) Administration de passerelles (déploiement, gestion d erreurs) Contraintes de ces applications Communication distribuée par événements Bus de communication distribué par événement Chargement et déchargement dynamique de blocs de code Plateforme de déploiement dynamique de code

Motivations (ii) 5 OSGi devient le noyau universel de Java pour charger, décharger et lier du code dynamiquement JSR 277 & JSR 291 J2ME, J2SE, et maintenant J2EE Spécifie un protocole de communication par événement EventAdmin depuis la R4 Les événements sont échangés entre services locaux Pas d échange de messages inter-passerelles Pas d échange de messages avec d autres types de plateformes (Serveurs J2EE, messges flash, e-mails )

Principes et intérêt des ponts (i) 6 Objectifs de nos travaux Propager les événements de l EventAdmin entre passerelles Propager les événements de l EventAdmin à l extérieur des passerelles Gérer différents types de bus de communication par message Comment Via des ponts (bridges) réutilisant les bus à messages (MOM) patrimoniaux Producteur de données Consommateur de données msg msg EventAdmin Passerelle OSGi Pont vers X MOM Patrimonial X BUS X

7 Principes et intérêt des ponts (ii) Compatibilité avec la spécification EventAdmin Consommateurs et producteurs de messages indépendants du MOM Augmente la réutilisabilité des services Utilisation de plusieurs ponts simultanément Passerelle entre différents MOM Diminue l hétérogénéité logicielle

Principes et intérêt des ponts (iii) 8 Producteur Event Admin Pont JMS MOM JMS OSGi Consommateur Event Admin Pont JMS MOM JMS OSGi Serveur J2EE Client JMS BUS JMS BUS dédié Capteur RFID Capteur RFID Capteur RFID MOM dédié Pont dédié Event Admin Pont JMS MOM JMS OSGi

Diapositive de résumé 9 Introduction Motivations (i, ii) Principes des ponts (i, ii, iii) Rappels Bus à messages Event Admin Service (i, ii) Conception des ponts Architecture Event Admin Pont (i, ii) Correspondances entre Event Admin et ponts Expérimentation et validation Event Admin Pont Ivy Event Admin Pont Flash Event Admin Pont JMS Conclusion and perspectives Q & A

Principaux concepts d OSGi 10 Framework: Environnement d exécution pour bundles Oscar (Objectweb) / Felix (Apache), Knopperfish, Equinox, SMF, ProSyst, Siemens VDO, Notification d événements Bundles: Unité d exécution et de déploiement Services: Objets Java implantant un contrat

Bus à messages 11 Définitions : Sujet (topic) : canal de communication partagé possédant un nom Producteur : écrit des messages Consommateur : lit les messages Action de poster : écrire un message Synchrone : le producteur est synchronisé sur la réception du message Asynchrone : le producteur n attend pas la réception Producteur 1 Producteur 2 E2 Sujet "tic" E2 E2 E2 Consommateur 1 Consommateur 2 Consommateur 3

R4 Event Admin Service (i) 12 Bus à message d OSGi Centralisé Publication synchrone et asynchrone Terminologie Event = sujet + contenu EventAdmin = serveur du bus à message Publisher : producteur EventHandler : consommateur Remarque Événements spéciaux d OSGi liés aux cycles de vie des Services, bundles et framework Gestion d une liste noire des consommateurs défectueux Gestion d une arborescence de sujet (tic/tac/*)

R4 Event Admin Service (ii) 13 Producteur Sujet = "tic/tac" Producteur Sujet = "tic/toc" EventAdmin LogService EventHandler Event Admin E2 E2 Consommateur Sujet = "tic/tac" Consommateur Sujet = "tic/*"

Diapositive de résumé 14 Introduction Motivations (i, ii) Principes des ponts (i, ii, iii) Rappels Bus à messages Event Admin Service (i, ii) Conception des ponts Architecture Event Admin Pont (i, ii) Correspondances entre Event Admin et ponts Expérimentation et validation Event Admin Pont Ivy Event Admin Pont Flash Event Admin Pont JMS Conclusion and perspectives Q & A

Architecture Event Admin Pont (i) 15 Producteur Sujet = "tic/tac" Producteur Sujet = "tic/toc" EventAdmin LogService EventHandler Event Admin EventAdmin Consommateur Sujet = "tic/tac" Consommateur Sujet = "tic/*" export(tic/tac) Pont EventHandler Administrateur ExportEvent MOM MOMService

Architecture Event Admin Pont (ii) 16 Producteur Sujet = "tic/tac" Producteur Sujet = "tic/toc" import(tic/*) EventAdmin LogService EventHandler Event Admin E2 EventAdmin "tic/tuc" Pont E2 EventHandler Consommateur Sujet = "tic/tac" Consommateur Sujet = "tic/*" Administrateur ExportEvent E2 MOM E2 MOMService

Correspondances entre Event Admin et ponts 17 Propagation des données Tout ne peut pas être propagé!! Messages non sérialisables ou dépendants de la plateforme (BundleID ) Déclaration explicite des sujets à propager Correspondance entre sujets EventAdmin/MOM Tous les sujets EventAdmin passent par un unique sujet du MOM Saturation du réseau A un sujet EventAdmin correspond un sujet du MOM Optimisation de l utilisation de la bande passante Ce n est pas toujours possible Post synchrone/asynchrone Ce n est pas toujours possible

Diapositive de résumé 18 Introduction Motivations (i, ii) Principes des ponts (i, ii, iii) Rappels Bus à messages Event Admin Service (i, ii) Conception des ponts Architecture Event Admin Pont (i, ii) Correspondances entre Event Admin et ponts Expérimentation et validation Event Admin Pont Ivy Event Admin Pont Flash Event Admin Pont JMS Conclusion and perspectives Q & A

Expérimentation et validation 19 Trois expérimentations Pont Ivy : protocole de diffusion sur un réseau local Pont Flash : utilise des sockets pour communiquer Pont JMS : spécification de bus à messages de Sun Couvrent différents types de communication par message Ivy : diffusion, pas d administration Flash : unicast, pas d administration JMS : diffusion, administration

Event Admin Pont Ivy 20 Ivy : protocole de diffusion de messages sur une adresse multicast ou broadcast Ne nécessite pas d infrastructure particulière Message codés en XML et reçus suivant des filtres Intérêt : diffuser les événements EA dans un réseau adhoc Communication inter-passerelles Principes : Traduction des événements EA en XML Communication par diffusion globale Tous les sujets EA exportés sont diffusés (saturation du réseau) Uniquement post asynchrone Pas d administration

Event Admin Pont Flash 21 Flash : présentation graphique dynamique et interactive Très utilisé dans le monde de l infographie Exécuté dans une machine virtuelle Flash Canal de communication (local) avec l extérieur (socket) Intérêt : en remplacement des canevas Java (swing ) Canevas Java peu utilisés dans le monde de l infographie Présentation plus rapide à construire en Flash Principes : Traduction des événements EA en XML Association d un client Flash à un unique pont Communication point à point Tous les sujets EA exportés transitent dans une unique socket Uniquement post asynchrone Pas d administration

Event Admin Pont JMS 22 JMS : spécification d un bus à message en Java Notions de sujet, de producteur, de consommateur Intégré à la spécification J2EE (MessageDrivenBean) Intérêts : diffuser des messages dans un réseau structuré Communication inter-passerelles Communication avec des serveurs d application J2EE Principes : Traduction des événements EA en événements JMS Association d un sujet EA à un sujet JMS Seules les passerelles intéressées par un sujet reçoivent les messages Uniquement post asynchrone Basé sur l implantation Joram (ObjectWeb) Administration complexe (construction d un réseau de serveurs JMS) Meilleur passage à l échelle en nombre de passerelles

Diapositive de résumé 23 Introduction Motivations (i, ii) Principes des ponts (i, ii, iii) Rappels Bus à messages Event Admin Service (i, ii) Conception des ponts Architecture Event Admin Pont (i, ii) Correspondances entre Event Admin et ponts Expérimentation et validation Event Admin Pont Ivy Event Admin Pont Flash Event Admin Pont JMS Conclusion and perspectives Q & A

Conclusion and perspectives 24 Propagation d événements hors des passerelles OSGi Transparent pour les producteurs/consommateurs EventAdmin Communication inter-passerelles et vers d autres applications Passerelle entre différents MOM Travaux actuellement utilisés dans l équipe pour Service de médiation (transformation de données) entre Web Services Suite logicielle RFID Perspectives Intégration des travaux de Bob Brady sur ECF Pont entre EventAdmin et Eclipse Communication Framework Étude et réalisation d autres ponts Siena*, GENA (UPnP), JINI Eventing, DPWS (WS-Eventing), JXTA, BIP, Jabber, SIP, CORBA CosEvent *: en cours

25 Q & A