1. “UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES”
UNIANDES
Tema:
RMI
Nombre:
Wilmer Javier Yacelga Moya
Docente:
Ing. Bernabé Ortega
2015
2. ¿QUÉ ES RMI?
Es un paquete de JAVA que nos permite controlar objetos y métodos de manera remota, para utilizar los recursos de
un servidor de manera transparente para el usuario. (anonimus)
RMI nos permite:
Permitir invocación de métodos de un objeto por objetos que residen en diferentes máquinas virtuales (en
particular, a través de la red)
Integrar el modelo de objetos distribuidos al lenguaje Java de modo natural, preservando en lo posible la
semántica de objetos en Java.
Preservar la seguridad de tipos (type safety) dadapor el ambiente de ejecución Java.
Mantener la seguridad del ambiente dada por los Security Managers, en particular, en presencia de carga
dinámica de clases.
Facilitar el desarrollo de aplicaciones distribuidas.
VENTAJAS DE LA RMI
Sencillez de uso.
Cualquier programador en java aprende en seguida a desarrollar aplicaciones RMI. En cualquier aplicación para
intranets que trabajen con entornos Java, RMI puede ser una buena elección. (Abian, 2004)
Separación entre interfaz e implementación.
Describe los servicios ofrecidos por un componente de un sistema de comunicaciones (una capa, por ejemplo) y
los protocolos para usarlos. En los sistemas orientados a objetos, la interfaz de un objeto es el conjunto de
métodos definidos para ese objeto, incluyendo los argumentos de entrada y salida.
Carga dinámica de código.
Java permite la descarga automática de Byte codes, lo que hace que el proceso de instalación y configuración
de los clientes puede ser tan sencillo como uno quiera. En el caso más simple, los clientes RMI pueden ser
applets accesibles mediante un navegador web..
Sencillez de la localización de los servicios.
A diferencia de los sockets, un cliente RMI no necesita saber las direcciones explícitas de los servidores). Es
suficiente con que sepa los nombres de estos y el registro RMI donde se han registrado.
Seguridad.
Puede usarse con protocolos de seguridad como SSL o HTTPS.
3. DESVENTAJAS DE RMI
RMI sólo usa Java.
Esta limitación era un problema al principio; pero, con el JDK 1.3, Sun incluyó la posibilidad de trabajar con el
protocolo IIOP de CORBA, lo cual permite una cierta interoperabilidad de las aplicaciones RMI con las
aplicaciones CORBA escritas en otros lenguajes (COBOL, C/C++, Smalltalk, etc.). (Miguel Alban Abian,
2010)
Falta de meta información.
RMI no tiene un sistema de meta información que almacene los servicios disponibles ysus API (esto es, los
nombres de los métodos, los argumentos década uno, los valores de retorno, etc.).
Paso de objetos por valor.
Este mecanismo penaliza la eficacia y escalabilidad de las aplicaciones RMI. Cuanto más aumenta el tamaño de
los objetos que se envían como argumentos, más datos hay que codificar en JRMP y enviar.
Falta de control de las transacciones.
RMI carece de un mecanismo automático que controle las transacciones y que permita revertir las
modificaciones si finalmente la transacción no se lleva a cabo.
CONCLUSIONES
RMI es un mecanismo que facilita el desarrollo y uso de objetos distribuidos mediante métodos sencillos para
cualquier usuario con afinación a lenguaje Java.
El uso de RMI para aplicaciones tipo cliente/servidor a mediana escala, en donde los clientes estén distribuidos
hace que sea tediosa la tarea de la diversificación de los códigos o el trabajo en conjunto.
BIBLIOGRAFÍA
Abian, M. A. (2004). Scribd - java y las redes. Obtenido de Scribd - java y las redes:
https://es.scribd.com/doc/91196304/25/Ventajas-e-inconvenientes-de-la-RMI
anonimus. (s.f.). java rmi2010. Obtenido de java rmi2010:
http://profesores.elo.utfsm.cl/~agv/elo330/2s05/projects/CesarVasquez/sitio_web/que_es.html
Miguel Alban Abian. (2010). JAVA Y LAS REDES. Obtenido de JAVA Y LAS REDES:
https://es.scribd.com/doc/91196304/25/Ventajas-e-inconvenientes-de-la-RMI