Home
Modèle client
Contents
1. les r sultats sont transmis a appelant lors du retour de proc dure RPC Role des talons Talon client stub Talon serveur skeleton C est la proc dure z C est la proc dure sur le d interface du site client site serveur qui recoit l appel en mode qui recoit l appel sous local forme de message le transforme en appel fait r aliser l ex cution sur distant en envoyant un le site serveur par la message proc dure serveur choix recoit les r sultats apr s de la proc dure l ex cution retransmet les r sultats gt retourne les param tres par message r sultats comme dans un retour de proc dure 14 RPC Perte de message m Cot client gt Si le d lai de garde expire R mission du message avec le m me identificateur Abandon apr s N tentatives Cot serveur gt Si le d lai de garde expire gt Si on re oit un message avec un identificateur identique R mission de la r ponse Abandon apr s N tentatives Cot client Si on recoit une r ponse avec un identificateur d j recu R mission du message d acquittement RPC Probl mes Traitement des z Probl mes de s curit d faillances authentification du client Congestion du r seau ou authentification du du serveur serveur a r ponse ne parvient pas confidentialit des avant une date fix e par le Sch client syst me temps echanges critique Performance Panne du client pen
2. stub dans Hellolmpl Stub class 32 Java RMI D ploiement Activation du serveur de nom gt rmiregistry 2 Activation du serveur java Hellolmpl gt Java Djava rmi server codebase http ma machineJ path indiquant quelle endroit la machine virtuelle cliente va pouvoir chercher des classes manquantes Exemple s rialisation e Client KEN a Torote methes call Remote A S i 3 Activation du client MEN a a 4 gt Java HelloClient jawa rmi sbrver codebase D telen eg http whrwServer mydirectory ownloads the definition from the client specified codebase A URL location file ftp orhttp Java RMI Principe de l appel de m thode Java VM objet m Skeleton objet Client R objet1 m Stub objet1 Java RMI Passage en parametre d un objet s rialisable Java VM objet hb m R clone O2 objet1 m R O2 otub objet Skeleton objet Java RMI Passage en param tre d un objet remote af Se a Wf a a a objeti m R O2 Stub objet1 Skeleton objet1 Java RMI bilan z Tr s bon exemple de RPC facilit d utilisation int gration au langage Java gt Passage de r f rence gt s rialisation ou r f rence distance gt D ploiement du code gt
3. tre activ avant la cr ation du serveur 29 Java RMI Activation du serveur de nom par le serveur fichier Hellolmpl java public static void main String args 1 int port String URL try transformation d une cha ne de caract res en entier Integer I new Integer args 0 port l intValue gt catch Exception ex System out println Please enter java Hellolmpl port return try Cr ation du serveur de nom rmiregistry Registry registry LocateRegistry createRegistry port Cr ation d une instance de l objet serveur Hello obj new Hellolmpl Calcul de l URL du serveur URL InetAddress getLocalHost getHostName port mon serveur Naming rebind URL obj y catch Exception exc Java RMI Exemple Client fichier HelloClient java R alisation du public class HelloClient client public static void main String args 1 try R cup ration d un stub sur l objet serveur Hello obj Hello Naming lookup ma machine mon serveur Appel d une m thode sur l objet distant obj sayHello y catch Exception exc import java rmi 31 Java RMI Compilation z Compilation de l interface du serveur et du client javac Hello java Hellolmpl java HelloClient java G n ration des talons automatique maintenant rmic HelloServeur skeleton dans Hellolmpl Skel class
4. methodes throws java rmi RemoteException gt param tres s rializables implements Serializable gt param tres r f rences implements Remote Ecrire une impl mentation de l objet r parti Classe extends java rmi server UnicastRemoteObject 26 Java RMI Exemple Interface fichier Hello java Description public interface Hello extends java rmi Remote de public void sayHello throws java rmi RemoteException l interface 27 Java RMI Exemple Serveur fichier Hellolmpl java import java rmi LAM import java rmi server UnicastRemoteObject u public class Hellolmpl extends UnicastRemoteObject implements Hello Serveur String message Impl mentation du constructeur public Hellolmpl String msg throws java rmi RemoteException message msg impl mentation de la m thode distante public void sayHello throws java rmi RemoteException System out println message 28 Java RMI Exemple Serveur fichier Hellolmpl java R alisation public static void main String args 1 d try u Cr e une instance de objet serveur Hello obj new Hellolmpl SCH Enregistre l objet cr er aupr s du serveur de noms su ite Naming rebind ma machine mon serveur obj System out printin Helloimpl bound in registry y catch Exception exc ATTENTION dans cet exemple le serveur de nom doit
5. M morisation ou non de l tat du client R ponse S lection Requ tes R ponses gt Diff rents types de service Pas de modification de donn es r manentes sur le serveur gt ex calcul fonction ou lecture donn e Modification du contexte d ex cution sur le site distant gt ex serveur de fichiers ou d objets gt probl mes de la concurrence et des pannes Modele client serveur Exemple Serveur de fichiers nfsd Serveur d impressions lpd Serveur de calcul Serveur base de donn es Serveur de noms annuaire des services Remote Procedure Call RPC Principes l G n ration du code gt d envoi et r ception des messages gt De d tection et r mission des messages perdus Objectif le programmeur d veloppe son application comme si elle tait centralis e RPC Birrel S Nelson 84 Principe de r alisation Protocole de x Protocole de communication J communication A Appelant M er l A B 24 Hu SS A C I Appel E r seau IN l I a l vE 1 D lt return Peturn l client serveur RPC A Principe de fonctionnement C t de l appelant Le client r alise un appel proc dural vers la proc dure talon client stub transmission de ensemble des arguments gt au point A le talon collecte les argu
6. chargement dynamique des classes s rialisables D signation par des URL 37 Ouverture RPC asynchrone e client poursuit son ex cution apr s l mission du message d appel a proc dure distante s ex cute en parall le avec la poursuite du client et retourne les param tres r sultats en fin de son ex cution gt le client r cup re les r sultats quand il en a besoin primitive sp ciale de lecture la lecture rend un r sultat nul si le r sultat n est pas disponible la lecture bloque le client si le r sultat n est pas disponible gt avantage parall lisme plus important critique le client ne retrouve pas la s mantique de l appel de proc dure 38 Ouverture RPC asynchrone RPC RPC asynchrone di sesch r e 21 Envoi r sultat lt r cup ration r sultat 39 Les limites du modele client serveur Services pour la construction d applications r parties gt le RPC est un m canisme de bas niveau des services additionnels sont n cessaires pour la construction d applications r parties d signation fichiers r partis s curit etc e CORBA EJB z Outils de d veloppement limit s la g n ration automatique des talons gt peu ou pas d outils pour la construction ou le d ploiement d applications r parties Composants Des tutoriaux de programmation RMI plein de Web 40
7. Cot serveur JVM Client 21 Java RMI Cot serveur O A cr ation del objet un stub et un skeleton avec un port de communication sont cr s cot serveur L objet serveur s enregistre aupr s d un annuaire rmiregistry en utilisant la classe Naming m thode rebind 2 L annuaire rmiregistry enregistre le stub de l objet 3 L annuaire est pret donner des r f rences a l objet serveur 22 Java RMI Cot client JVM Client Java RMI Cot client 4 L objet client fait appel a l annuaire rmiregistry en utilisant la classe Naming pour localiser l objet serveur m thode ookup 5 L annuaire d livre une copie du stub 6 L objet stub est install et sa r f rence est retourn e au client 7 Le client effectue l appel l objet serveur par appel a l objet stub 24 Java RMI Utilisation COdage gt description de l interface du service gt criture du code du serveur qui implante l interface gt criture du client qui appelle le serveur compilation compilation des sources javac g n ration des stub et skeleton rmic plus la peine g n ration dynamique activation lancement du serveur de noms rmiregistry gt lancement du serveur gt lancement du client 25 Java RMI Manuel d utilisation z D finition de l interface de l objet r parti interface publique interface extends java rmi Remote
8. Modele client serveur Daniel Hagimont IRIT ENSEEIHT 2 rue Charles Camichel BP 7122 31071 TOULOUSE CEDEX 7 Daniel Hagimont ag enseeiht fr http hagimont perso enseeiht fr Principes g n raux gt Mod le client serveur gt Appel de proc dure distance Remote Procedure Call Application dans l environnement Java Java Remote Method Invocation RMI Modele client serveur Definition z Application client serveur application qui fait appel des services distants au travers d un change de messages les requ tes plut t que par un partage de donn es m moire ou fichiers Serveur programme offrant un service sur un r seau par extension machine offrant un service client programme qui met des requ tes ou demandes de service II est toujours l initiateur du dialogue Modele client serveur Communication par messages z Deux messages au moins chang s Le premier message correspondant la requ te est celui de l appel de proc dure porteur des param tres d appel Le second message correspondant la r ponse est celui du retour de proc dure porteur des param tres r sultats Proc dure proc in p out appel proc in p out begin end Retour p out Modele client serveur Principe z Vu du client Requ te client z Vu du serveur Gestion des requ tes priorit gt Ex cution du service s quentiel concurrent
9. dant le traitement de la requ te Panne du serveur avant ou D signation Aspects pratiques pendant le traitement de gt Adaptation des la requ te conditions multiples Panne du syst me de protocoles langages communication mat riels gt Quelles garanties RPC IDL sp cification des interfaces Utilisation d un langage de description d interface IDL gt Sp cification commune au client et au serveur gt D finition des types et natures des param tres IN OUT IN OUT z Utilisation de ces d finitions pour g n rer automatiquement gt e talon client ou proxy stub gt talon serveur ou squelette skeleton IDL Mode op ratoire g n ral G n rateur faxi biblioth que de talons d interface G n rateur D finitions de talons l biblioth que biblioth que Java Remote Method Invocation RMI Un RPC objet int gr a Java z nteraction d objets situ s dans des espaces d adressage diff rents des Java Virtual Machines JVM sur des machines distinctes Simple mettre en oeuvre un objet distribu se manipule comme tout autre objet Java Java RMI Principe objet client r f rence Methode 1 Methode n Talon serveur d signation envoi de requ tes ex cution de requ te retour de r sultat R f rence d objet m thode argume V s R sultat ou exception 20 Java RMI
10. ments et les assemble dans un message empaquetage parameter marshalling un identificateur est g n r pour le RPC et joint au message Un d lai de garde est arm Pb d termination de l adresse du serveur annuaire de services le talon transmet les donn es au protocole de transport pour mission sur le r seau RPC B et C Principe de fonctionnement Cot de l appel gt le protocole de transport d livre le message au service de RPC talon serveur skeleton gt au point B le talon d sassemble les arguments d paquetage unmarshalling l identificateur de RPC est enregistr l appel est ensuite transmis la proc dure distante requise pour tre ex cut point C Le retour de la proc dure redonne la main au service de RPC et lui transmet les param tres r sultats point D RPC D Principe de fonctionnement Cot de l appel gt au point D les arguments de retour sont empaquet s dans un message un autre d lai de garde est arm le talon transmet les donn es au protocole de transport pour mission sur le r seau RPC E Principe de fonctionnement Cot de l appelant gt l appel est transmis au service de RPC point E les arguments de retour sont d paquet s le d lai de garde arm au point A est d sarm un message d acquittement avec l identificateur du RPC est envoy au talon serveur le d lai de garde arm au point D peut tre d sarm
Download Pdf Manuals
Related Search
Related Contents
User Manual Manuale installatore Bentel Norma 4-8T Extractors VI61 mode d`emploi radiateur électrique instructions electric radiator Adaptador USB Ryś - Retro 7-bit - 7 Guide d`intégration des principes de gestion environnementale aux スクラブ等の不溶性成分を含有する洗顔料の使用上の注意事項について 技術・家庭 Copyright © All rights reserved.
Failed to retrieve file