cilia, un framework de médiation ouvert, léger, multi-personnalités partie 2 : framework cilia
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 1
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
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 2
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é
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 3
Framework Cilia
Modèle d’implantation Modèle de conceptionMédiation de données et de service
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 4
Container iPOJO spécifique
Technologies de baseOSGi : 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
Cilia s’appuie sur l’extensibilité d’iPOJO pour construire des composants iPOJO dédiés à la médiation
Scheduler Dispatcher
Processor
Composant générique iPOJO => Médiateur iPOJO
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 5
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
sche
dule
r
processor
disp
atch
er
Médiateur
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 6
ProcessorScheduler Dispatcher
Mediator
Collector Sender
Modèle d’implantation : la communication
• 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
1..n 1..n
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 7
Framework Cilia
Modèle d’implantation Modèle de conceptionMédiation de données et de service
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 8
Modèles d’implantation et de conception
Client
ServicePlate-forme d'exécution
Service
Service
Modèle d’implantation = médiateurs en iPOJO
Modèle conceptuel exécutable = chaîne spécifiée en java à partir de l’API Java de médiation
Modèle conceptuel =médiateurs, instances et assemblage spécifiés à l’aide du DSL XML de médiation
Syntaxe iPOJO + médiation
Syntaxe médiation Syntaxe médiation
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 9
Modèle conceptuel : médiateur et liaison
• 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
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 10
LiaisonsUne 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.
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 11
API JavaPermet 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édiationNotion de modèle exécutable
Description java d’une chaîne équivalente à sa spécification en XML
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 12
Framework Cilia
Modèle d’implantationModèle de conceptionMédiation de données et de service
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 13
Médiation de donnéesLa 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
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 14
Médiation de serviceLa 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)
Client
ServicePlate-forme d'exécution
Service
Service
Service
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP ― slide 15
Médiation de serviceLes 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)
Client
ServicePlate-forme d'exécution
Service
Service
Service