Title: Ajout de proprits nonfonctionnelles aux EJB
1Ajout de propriétés non-fonctionnelles aux EJB
Hélène Maguin Mickaël Bartorello INRIA - ESSI
2Ajout de propriétés non-fonctionnelles aux EJB
- Contexte de notre étude
- Présentation du prototype
- Le protocole de composition de services
- Les extensions possibles
- Démo
-
3Contexte (1/ 3)
- JOnAS
- Serveur dEJB
- Architecture basée sur un schéma fabrique
- Sécurité, transaction et persistance des objets
4Contexte (2/ 3)
- ProActive (Oasis)
- produit complet
- fournisseur de services apportant des propriétés
non fonctionnelles - Les services de ProActive
- la communication asynchrone (futurs)
- lactivation avec politique dordonnancement de
requêtes - la migration
5Contexte (3/ 3)
- Le service dinteractions (Rainbow)
- service à part entière
- offre la possibilité de faire interagir des
objets avec une pose de lien dynamique - modification du comportement fonctionnel des
objets
6Objectif
- Faire bénéficier les beans de nouvelles
propriétés non fonctionnelles de façon
paramétrable - La politique d ordonnancement de requêtes
(ProActive) - La communication asynchrone (ProActive)
- Le service dinteractions (Rainbow)
7Présentation du prototype
Service Asynchronisme
Request
Politique ordonnancement
Request
Request
Controler
Remote (EjbObject)
adapter
Request
Service Interaction
bean
8Diagramme des apports
ProActive
Interactions
Contrôleur En périphérie
Positionnement dun méta-objet
Modèle pour composer ce service avec dautres
Modèle pour lajout de services
Prototype
- asynchronisme pour lutilisateur
- contrôle sur le comportement des beans
- politique de synchronisation des beans
Ajout de propriétés non fonctionnelles aux beans
JOnAS- EJB
9Implications sur le fichier de déploiement
Pour le prototype ltbean-prototypegt
ltserviceAsynchronismegt(not) requiredlt/serviceAsync
hronismegt ltserviceInteractiongt(not)
requiredlt/serviceInteractiongt
ltservicePolitiquegt(not)requiredlt/servicePolitiquegt
lt/bean-prototypegt
Ou ltbean-multiService gt ltserviceProActivegt
gt(not) required lt/serviceProActivegt
ltserviceInteractiongt(not) required
lt/serviceInteractiongt lt/bean-multiService gt
10Service hiérarchisé
Asynchronisme
Request
Service ProActive
Contrôleur
Request
Remote (EjbObject)
adapter
Politique ordonnancement
Request
bean
Service Interaction
11Le protocole de composition de services côté
contrôleur
- Le contrôleur fixe les règles de la communication
- Définit un moyen de communication inter- services
Request requête réifiée - avec un champ destiné aux services
- Gère (statiquement) les règles de routages
12Le protocole de composition de services côté
service
- Une fois plugué, le service voit le contrôleur
comme le méta-objet du bean - Il implémente une interface service
- public void receive (Request r)
- sengage à rappeler le contrôleur une fois son
travail fini - Il diffuse au contrôleur des méthodes
personnelles ex addRule
13Le protocole de composition de services côté
utilisateur
Service ProActive
Contexte utilisateur
Request
Request
Contrôleur
Remote (EjbObject)
objet
objet
Request
Contrôle
Service Interaction
bean
SI
SF
14Les services de JOnAS
Asynchronisme
Service JOnAS
Service ProActive
Request
Controler
Request
Remote (EjbObject)
Ordonnancement
Request
bean
Service Interaction
15Les services de JOnAS
Service JOnAS
Request
Service ProActive
Request
Controler
Request
Remote (EjbObject)
Request
bean
Service Interaction
16Modèle de container
Service JOnAS
Request
Service ProActive
Request
Remote- Controler
Request
bean
Service Interaction
17Démo