Home

Construction des Applications Réparties" 18/08/14 Fabienne Boyer

image

Contents

1. JvnCoord F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 23 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 24 Fabienne Boyer LIG Construction des Applications R parties Coh rence cas de figure 6 Coh rence cas de figure 7 18 08 14 D DiockRead DiockWrite R C2 5 WCI Client CI Client C2 Client C1 Client C2 NL OR W 4 RC NL 6 W W 4 NL DlockRead 3l yann WriirEOR eade DlockWrite BinvalidateWriter W c2 IRELE W C2 5W CI JvnCoord F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 25 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 26 Coh rence cas de figure 8 Coh rence cas de figure 9 D DiockWrite DiockWrite Client C1 Client C2 Client C1 Client C2 NL 6 W R 4 NL RC 6 W RC 4 NL DjlockWrite 3invalidateReader Diokyrie 3 invalidateReader R C1 C2 JvnCoord 5 W C1 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 27 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 28 Fabienne Boyer LIG Construction des Applications R parties Coh rence cas de figure 10 Coh rence
2. principes de mise en uvre 18 08 14 DiockRead Client C1 Client C2 NL 6 R RWC 4 R 2 lockRead W C2 5 R C1 C2 JvnCoord 3 invalidateWriterForReader m Un objet d interception JvnObject coop re avec le coordinateur pour la gestion de la coh rence Il peut tre invoqu en parall le par l application et par le coordinateur Il doit donc tre synchronis m Quand le coordinateur invalide un verrou d un client Ex invalidateReader invalidateWriter Invalidate WriterForReader Si le verrou JVN est en cours d utilisation il faut attendre wait de Java Terminer l attente lorsque le verrou JVN est lib r notify de Java F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 29 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 30 Coh rence cas critique Coh rence cas critique D DiockWrite 2 lockWrite Client C1 Client C2 NE w RC NL 3 lockWrite 5 invalidateReader A lockWrite R C1 C2 W C1 JvnCoord m Pour viter le risque d interblocage Les m thodes d invalidation appel e par le coordinateur doivent pouvoir tre ex cut es tout moment m me si un appel lockRead ou lockWrite est en cours Donc il faut limiter les portions de code synchronis es dans JvnObject ne pas engl
3. g n riques jvnObject Interc Object 2 Object 1 Object 2 ivnLocalServer Server 2 G n ration la compilation via l usage de l outil Apache Velocity G n ration l ex cution via l usage des dynamic proxies de Java jvnRemoteServer junRemoteCoord x JVM3 R Coordinator Intere Object 1 Interc Object 1 Intere Object 2 JVN2 G n ration automatique d objets d interception sp ci l applicatif afin que le mod le de programmation soit conforme celui de Java RMI pour le programmeur Object1 Object 2 L Server 1 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 9 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 10 Interface JvnLocalServer Interface JvnLocalServer suite Initialise le serveur JVN singleton R cup re un read lock sur un objet JVN public static junServer jvnGetServer public Serializable jvnLockRead int joi Fin d utilisation du service JVN R cup re un write lock sur un objet JVN public void jvnTerminate public Serializable jvnLockWrite int joi Cr ation d un objet JVN public JvnObject jvnCreateObject Serializable jos Association d un nom symbolique un objet JVN public JvnObject jvnRegisterObject String jon JvnObj
4. 18 Impl mentation du coordinateur Coh rence cas de figure 1 m Pour chaque objet partag lockRead Identifiant unique id Client C1 Client C2 Dernier tat valid de l objet 4 RC R Verrous d tenus par les applications clients i Etat initial Etat final m Le coordinateur contr le les verrous des applications clientes Usage de l interface JunRemoteServer ets R CI JvnCoord F Boyer UF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 19 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 20 Fabienne Boyer LIG Construction des Applications R parties Coh rence cas de figure 2 Coh rence cas de figure 3 18 08 14 D 1 lockRead 1 lockRead RCI RCI JvnCoord Client CI Client C2 Client C1 Client C2 NL 4 R NL 4 R R 2 lock read 2 lock _read 3 R C1 R C2 3 R C1 C2 JvnCoord JvnCoord F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 21 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 22 Coh rence cas de figure 4 Coh rence cas de figure 5 1 lockRead V 1 lockRead Client C1 Client C2 Client C1 Client C2 RC 2 R WC 2 RWC W CI WCI
5. Construction des Applications R parties JAVANAISE un cache d objets r partis en Java Formation M2PGI UJF Fabienne Boyer Laboratoire LIG INRIA UJF INPG http membres liglab imag fr boyer Fabienne Boyer imag fr Pen Plan 18 08 14 m Motivations m Organisation du projet m API Javanaise m Gestion de la coh rence m Planning F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI Cache d objets r partis Cache d objets r partis m Avantages Favorise les acc s locaux Efficace pour les objets souvent acc d s en lecture Efficace pour les objets qui concentrent les phases d criture m Inconv nients Complexit de mise en uvre Complexit de gestion des pannes Application r partie Application r partie Objet partag Objet partag Application r partie Objet partag F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI Fabienne Boyer LIG Construction des Applications R parties 18 08 14 Gestion de la coh rence Entry vs Release Consistency m Coh rence relation que gardent entre elles les diff rentes corse i copies d un objet aueg m Coh rence tablie sur des points de synchronisation prise 5 5 rel chement de verrou Coh rence s quentiell
6. e Coh rences faibles coh rence la sortie release consistency coh rence l entr e entry consistency lock ROp1 W y 2 WE unlock Coh rences non s quentielles P1 L A se 1 sas T gt ae ia coh rence causale majxyz entry c maj x z release c y 4 v LA P2 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 5 F Boyer LUF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 6 Le projet Javanaise Principe de mise en oeuvre m Conception et mise en uvre d un service de gestion E interception des appels applicatifs d objets Java dupliqu s Au dessus de Java RMI Coh rence de type entry consistency 2 Appel de m thode f r Objet applicatif m Principe de mise en uvre applicative Z Ce Interception des appels applicatifs sur les objets r partis Object update Shared Object Store F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 7 F Boyer UF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 8 Fabienne Boyer LIG 2 Construction des Applications R parties 18 08 14 Organisation du projet Javanaise Architecture Globale i JvMi JVM 2 tapes JVN1 L utilisation de Javanaise n est pas transparente pour le mH Application 1 Application 2 programmeur usage d objets d interception
7. ect jo R cup ration d une r f rence sur un objet JVN partir de son nom symbolique public JvnObject jvnLookupObject String jon CL Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI LL F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 12 Fabienne Boyer LIG 3 Construction des Applications R parties 18 08 14 Exemple d utilisation du service Javanaise JVN 1 Interface JvnObject Version 1 de Javanaise m JvnObject objet d interception pour un objet partag Une r f rence un objet partag pointe sur un JvnObject JvnServer js JvnServer jvnGetServer MyClass o new MyClass E Interface JvnObject jvnO js jvnCreateObject o primitives de verrouillage jvnLockRead jynLockWrite et jynUnLock de jvnO jvnLockRead appel d une m thode applicative m impl mentation jvnO jvnGetObjectState lt method gt lt params gt variable lock R W RC WC RWC jvn0 jvnUnLock 4 id unique r f rence vers l objet partag applicatif Avec quelques casts F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 13 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 14 Interactions entre les serveurs et le Gestion de la coh rence coordinateur m Etat du verrou d un JvnObject
8. invalidateReader joi NL nolock jos lockRead joi js jos invalidateWriter joi RC read lock cached not currently used jos lockWrite joi js jos invalidateWriterForReader joi WC write lock cached not currently used R read lock taken W write lock taken JvnServer ete JvnServer RWC write lock cached amp read taken JvnServer F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 15 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 16 Fabienne Boyer LIG 4 Construction des Applications R parties Interface JunRemoteServer Interface JvnRemoteCoord 18 08 14 Interface JvnRemoteServer permet au coord de r clamer le passage d un verrou de l criture la lecture public jvninvalidateWriterForReader int joi permet au coord de r clamer l invalidation d un lecteur public jvnIinvalidateReader int joi Interface JvnRemoteCoord permet de r clamer au coord un verrou en lecture public jvnLockRead permet de r clamer au coord un verrou en criture public jvnLockWrite permet au coord de r clamer l invalidation d un crivain public jvnIinvalidateWriter int joi F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 17 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI
9. la gestion de la coh rence verrous du point de vue de l impl mentation Suivi S ance 4 Soutenances avec d monstrations Permet de faire des mesures de performance F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 3 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 40 Fabienne Boyer LIG 10 Construction des Applications R parties 18 08 14 Evaluation A rendre m D monstration m Un manuel d installation et un manuel d utilisation en Aboutissement du projet anglais Fonctionnalit s Les sources du projet en tgz ou en zip Fiabilit Tests Extensions Qualit du code Documents associ s Ma trise des techniques F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 41 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 42 R f rences Em Mod les objets dupliqu s B N Bershad M J Zekauskas W A Sawdon The Midway Distributed Shared Memory System proc 38th IEEE Computer Society International Conference COMPCON 93 Feb 93 J B Carter J K Benett and W Zwaenepoel Techniques for reducing consistency related communication in distributed shared memory systems ACM Transactions on Computer Systems 13 3 1995 D Hagimont F Boyer A Configurable RMI Mechanism for Sharing Distributed Java Objects IEEE Interne
10. ober les appels au coordinateur dans les portions de code synchronis es F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 31 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 32 Fabienne Boyer LIG Construction des Applications R parties Etape 2 Javanaise version 2 JVN2 Exemple d utilisation de JVN2 18 08 14 m Objectif augmenter la transparence pour le programmeur m Moyen utiliser un objet d interception sp cifique qui fournit les m mes interfaces que celles de l objet partag G n ration la compilation de la classe d interception sp cifique en utilisant la r flexivit de Java et l outil de g n ration Apache Velocity G n ration l ex cution d un objet d interception sp cifique dynamique via les dynamic proxies de Java Version 2 de Javanaise avec g n ration la compilation JvnMyClass o new JvnMyClass appel d une m thode applicative o meth Version 2 de Javanaise avec g n ration l ex cution dynamic proxies MyClass o JvnProxy newInstance new MyClass appel d une m thode applicative o meth F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 33 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 34 G n ration la compilation des objets d inter
11. ons m Extension 4 d centraliser le coordinateur Toute application utilisant Javanaise participe la coordination m Extension 6 Supporter des clients multi thread s Les agents se synchronisent via un protocole de groupe fiable m Extension 7 permettre un objet Javanaise de contenir m Extension 5 invocations transactionnelles une r f rence vers un autre objet Javanaise L objet d interception fournit des m thodes de d marrage terminaison G rer les r f rences contenues dans un objet Javanaise par la de transactions sp cialisation des primitives de s rialisation d s rialisation Les m thodes m tier invoqu es au sein d une transaction poss dent les propri t s ACID F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 37 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 38 Tests Planning m Une application de test fournie chat Permet de valider la gestion de la coh rence verrous conceptuellement S ance 1 Pr sentation g n rale du projet Travail attendu prototypage JVNI S ance 2 Rendu prototypage JVNI m Compl ter la base de tests mode burst de ae RRR N clients qui stressent le service Javanaise en passant leur temps prototypage JVN2 acqu rir des verrous et les lib rer sur un nombre d objets restreint S ance 3 Rendu prototypage JVN2 Permet de valider
12. position Etape 3 Extensions m Un objet partag est d une classe donn e ex MyClass M Analyse des m thodes fournies par cette interface via les fonctions d introspection Java java lang reflect m G n ration d une classe d interception sp cifique JvnMyClass la place de la classe d interception g n rique JvnObject m JynMyClass impl mente les m mes m thodes interfaces que MyClass m Les m thodes fonctionnelles de JvnMyClass encapsulent la prise et le rel chement de verrous m Le mode d acc s d une m thode fonctionnelle est d tectable gr ce des annotations Java ou noms de m thode sp ciaux _R ou _W par ex ou bien gr ce des tiquettes tags sur les m thodes de I interface m Extension 1 gestion de la saturation d un cache client Capacit de flusher un ensemble d objets partag s m Extension 2 traitement des pannes client Tout client peut subir une panne machine tout instant m Extension 3 traitement des pannes du coordinateur Le coordinateur peut subir une panne machine tout instant On supposera que la machine peut tre red marr e sans perte disque F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 35 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 36 Fabienne Boyer LIG Construction des Applications R parties 18 08 14 Extensions Extensi
13. t Computing Volume 5 num ro 1 Jan 2001 F Boyer UJF Projet JAVANAISE UE Etude et projet d intergiciels M2PGI 43 Fabienne Boyer LIG 11

Download Pdf Manuals

image

Related Search

Related Contents

SERVICE USER MANUAL  2 - Cardin Elettronica  12.06  Bedienungsanleitung  AEG Protect TwinPower  Toshiba NB305-N410WH  Estación total electrónica  ダウンロード  VERNIS INOXYDOR  Bedienungsanleitung  

Copyright © All rights reserved.
Failed to retrieve file