Remote method invocation

(Redirigé depuis Java RMI)

Remote method invocation, plus connu sous l'acronyme RMI est une interface de programmation (API) pour le langage Java qui permet d'appeler des méthodes distantes, sur le principe des ORB. L'utilisation de cette API nécessite l'emploi d'un registre RMI sur la machine distante hébergeant ces objets que l'on désire appeler au niveau duquel ils ont été enregistrés. Cette interface de programmation est très souvent utilisée en parallèle avec l'API d'annuaire JNDI ou encore avec la spécification de composants distribués transactionnels EJB du langage Java.

Interaction typique entre un client et un serveur

Cette bibliothèque, qui se trouve en standard dans Java SE, permet la communication via le protocole HTTP (ou IIOP, depuis la version 1.3 du JDK) entre des objets Java éloignés physiquement les uns des autres, autrement dit s'exécutant sur des machines virtuelles java distinctes. RMI facilite le développement des applications distribuées en masquant au développeur la communication client / serveur.

Cette bibliothèque entre en concurrence avec la norme CORBA maintenue par l'Object Management Group, et les produits qui la respectent, ou avec la technologie RPC dont l'un des acteurs est Microsoft.

Technologies modifier

RMI est basé sur TCP-IP, le Java Remote Method Protocol (JRMP). Une interopérabilité avec CORBA est assurée par RMI-IIOP.

Jusqu'à la version 5.0 du JSE, il fallait utiliser un compilateur de souche (stub) appelé RMIC avant tout enregistrement sur le registre RMI. Désormais, il est possible de les générer dynamiquement.

Bibliographie modifier

Voir aussi modifier

Articles connexes modifier

Liens externes modifier