Calcul Parall`ele Cours 5 - JAVA RMI Eric Goubault Commissariat `a

Calcul Parall`ele
Cours 5 - JAVA RMI
Eric Goubault
Commissariat `
a l’Energie Atomique & Chaire Ecole
Polytechnique/Thal`
es
Saclay
Le 28 f´
evrier 2012
Eric Goubault 1 28 f´evrier 2012
Remote Method Invocation
Permet d’invoquer des m´ethodes d’un objet distant, c’est `a dire
appartenant `a une autre JVM, sur une autre machine
Architecture de type client/serveur; similaire aux “Remote Proce-
dure Calls” POSIX
Se rapproche de plus en plus de CORBA (langage ind´ependant
etc., voir cours suivant)
R´ef´erences: JAVA, Network Programming and Distributed Computing,
D. Reilly et M. Reilly, Addison-Wesley.
et http://java.sun.com/products/jdk/rmi/
Eric Goubault 2 28 f´evrier 2012
Architecture
Classe qui impl´emente la m´ethode distante (serveur):
-- dont les m´ethodes renvoient ou recoivent des objets
Serializable (s´emantique par copie)
-- ou des objets appartenant `a des classes remote (s´emantique
par r´ef´erence)
-- m´ethodes doivent pouvoir lancer l’exception RemoteException
Client qui utilise les m´ethodes distantes
Registre d’objets distants qui associe aux noms d’objets l’adresse
des machines qui les contiennent
Eric Goubault 3 28 f´evrier 2012
Les classes impl´
ementant Serializable
Objets instances peuvent ˆetre transcrits en “stream”, c’est-`a-dire
en flots d’octets.
writeObject(ObjectOutputStream aOutputStream)
readObject(ObjectInputStream aInputStream)
responsables respectivement de d´ecrire un objet sous forme de
flot d’octets et de reconstituer l’´etat d’un objet `a partir d’un flot
d’octets.
La plupart des classes (et de leurs sous-classes) de base String,
HashTable,Vector,HashSet,ArrayList...sont Serializable.
Eric Goubault 4 28 f´evrier 2012
Serializable
dans le cas o`u on passe une classe Serializable, il faut que la
d´efinition de cette classe soit connue (copi´ee sur les diff´erentes
machines) des clients et du serveur
il peut y avoir `a g´erer la politique de s´ecurit´e (sauf pour les objets
“simples”, comme String etc.).
Eric Goubault 5 28 f´evrier 2012
1 / 57 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !