150 likes | 300 Views
Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 2 : Framework Cilia Auteurs : LIG/Adèle – Orange Labs/MAPS/MEP. Workshop Cilia : 21 juin 2010. Plan. Médiation Historique Technologies de médiation Cilia : génération OSGi et multi-personnalités
E N D
Cilia, un framework de médiation ouvert, léger, multi-personnalités PARTIE 2 : Framework Cilia Auteurs:LIG/Adèle – Orange Labs/MAPS/MEP Workshop Cilia : 21 juin 2010
Plan • Médiation • Historique • Technologies de médiation • Cilia : génération OSGi et multi-personnalités • Framework Cilia • Modèle d’implantation • Modèle de conception • Médiation de données et de service • Processus logiciel • Vue d’ensemble • Spécification d’architecture • Spécification d’instances • Déploiement • Cas d'usage • Interopérabilité dans un Système d’Information • Remontée de données dans un Système Embarqué
Framework Cilia Modèle d’implantation Modèle de conception Médiation de données et de service
Container iPOJO spécifique • Technologies de base • OSGi : fournit un environnent dynamique aux développeurs pour construire des applications basées sur les services • iPOJO : modèle à composant qui permet d’abstraire la complexité de développement d’applications OSGi Composantgénérique iPOJO =>Médiateur iPOJO Scheduler Dispatcher Cilia s’appuie sur l’extensibilité d’iPOJO pour construire des composants iPOJO dédiés à la médiation Processor
Médiateur dispatcher processor scheduler Modèle d’implantation : le médiateur • Un médiateur iPOJO est composé de : • Scheduler : planifie le traitement des données reçues • Processor: effectue le traitement des données • Dispatcher : effectue le routage des données après traitement Un médiateur correspond à un type défini lors de la phase de conception
La communication entre médiateurs est réalisée par des senders et des collectors Une chaîne ou graphe de médiation est composé d’un ensemble de médiateurs qui communiquent Mediator Scheduler Processor Dispatcher Collector Sender Modèle d’implantation : la communication 1..n 1..n
Framework Cilia Modèle d’implantation Modèle de conception Médiation de données et de service
Modèles d’implantation et de conception Modèle conceptuel = médiateurs, instances et assemblage spécifiés à l’aide du DSL XML de médiation Syntaxe médiation Syntaxe médiation Modèle conceptuel exécutable= chaîne spécifiée en java à partir de l’API Java de médiation Syntaxe iPOJO + médiation Modèle d’implantation=médiateurs en iPOJO Service Service Client Service Plate-forme d'exécution
Une liaison (binding) relie deux médiateurs par des ports de sortie et d’entrée Une chaîne ou graphe de médiation est composée d’un ensemble de médiateurs et de leurs liaisons Modèle conceptuel : médiateur et liaison
Liaisons • Une liaison a un type qui correspond à un protocole • Types de liaison possibles : • Inter-médiateurs direct, event-admin, jms Entrée dans la chaîne event-admin, jms, connecteur BD, etc. Sortie de la chaîne email, event-admin, jms, etc.
API Java • Permet de créer en java une chaîne de médiation • Instances de médiateurs et liaisons • Permet de décrire des actions autonomiques sur une chaîne • Par exemple, remplacement ou reconfiguration d’un médiateur à l’exécution • Permet de suivre à tout moment l’évolution d’une chaîne de médiation • Notion de modèle exécutable • Description java d’une chaîne équivalente à sa spécification en XML
Framework Cilia • Modèle d’implantation • Modèle de conception Médiation de données et de service
Médiation de données • La médiation de données se place entre des sources d’information et des applications consommatrices • Cilia permet d’effectuer ces liaisons et de réaliser des opérations de médiation sur ces données Plate-forme d'exécution
Médiation de service • La médiation de service se place entre un service client et des fournisseurs de service • Cilia permet la mise en place des patrons d’intégration (EIP) de l’entreprise • Routage, split/aggregagate, resequences, … • Cilia repose sur OSGi et iPOJO qui permettent de construire une solution de médiation modulaire, distribuée et dynamique • Appel à un service externe (par exemple, WS) : possibilité de déléguer le code technique à un service externe à la chaîne (par exemple, proxy CXF) Service Service Client Service Service Plate-forme d'exécution
Médiation de service • Les caractéristiques de Cilia par rapport aux ESB : • Permettre de mettre en place les patrons d’intégration (EIP) de l’entreprise • Routage, split/aggregagate, resequences, … • Permettre d’avoir des chaînes de médiation distribuées • Profiter d’OSGi et d’iPOJO pour obtenir une solution de médiation dynamique • Appel à un service externe (par exemple, WS) : possibilité de déléguer le code technique à un service externe à la chaîne (par exemple, proxy CXF) Service Service Client Service Service Plate-forme d'exécution