Anda di halaman 1dari 2

Arquitectura de Java RMI

Nivel de resguardo/ esqueleto (proxy/skeleton) que se encarga del aplanamiento (serializacin) de los parmetros. Proxy: resguardo local. Cuando un cliente realiza una invocacin remota, en realidad hace una invocacin de un mtodo del resguardo local. Esqueleto (skeleton): recibe las peticiones de los clientes, realiza la invocacin del mtodo y devuelve los resultados. Nivel de gestin de referencias remotas: interpreta y gestiona las referencias a los objetos de servicio remoto. Nivel de transporte: se encarga de las comunicaciones y de establecer las conexiones necesarias. SERVICIO DE DIRECTORIOS Se pueden utilizar diferentes servicios de directorios para registrar un objeto distribuido. El registro RMI, rmiregistry, es un servicio de directorios sencillo proporcionado por SDK (Java Software Development Kit). El soporte para RMI en Java est basado en las interfaces y clases definidas en los paquetes: Java.rmi Java.rmi.server CARACTERSTICAS DE JAVA RMI Se basa en una interfaz remota Java (heredada de la clase Java Remote). Es necesario tratar mayor nmero de excepciones que en el caso de innovacin de mtodos locales. Errores en la comunicacin entre los procesos (fallos de acceso, fallos de conexin) Problemas asociados a la invocacin de mtodos remotos(no encontrar el objeto, el resguardo o el esqueleto) Los mtodos deben especificar la excepcin RemoteException. DESARROLLO DE APLICACIONES RMI

REGISTRO DEL SERVICIO Antes de arrancar el cliente y el servidor, se debe arrancar el programa rmiregistry en el servidor para el servicio de nombres rmiregistry en el servidor para el servicio de nombres. El puerto que utiliza el rmiregistry por defecto es el 1099. rmiregistry [port_number]

COMPARACIN DE RMI Y SOKETS Los sokets estn ms cercanos al sistema operativo, lo que implica una menor sobrecarga de ejecucin. rmi proporciona mayor abstraccin, lo que facilita el desarrollo de software. Los sokets suelen ser independientes de plataforma y lenguaje.

CONCLUSIONES

Java RMI esencialmente permite que objetos JAVA distribuidos en distintas mquinas puedan comunicarse entre s, enviarse mensajes, ejecutar cdigo remoto, etc. sin que el programador tenga que preocuparse del proceso de construir paquetes, gestionar problemas de conexin, controlar errores, etc., intenta simular que el programa est trabajando siempre con objetos en la mquina local.

Anda mungkin juga menyukai