SlideShare uma empresa Scribd logo
1 de 3
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
“UNIANDES”
FACULTAD DE SISTEMAS
CARRERA: INGENIERÍA EN SISTEMAS
OCTAVO NIVEL
Tema: RMI
Asignatura: Cliente Servidor 2
Nombre: Jonathan Llerena
Docente: Ing. Bernabé Ortega
2015
RMI es un paquete de JAVA que permite manejar objetos y sus respectivos métodos
de manera remota, para utilizar los recursos de un servidor de manera transparente
para el usuario local.
La conectividad de RMI se ocupa una herramienta de JAVA, llamada RMI Registry. El
RMI Registry puede estar localizado en un lugar distinto al servidor, y se encarga de
registrar un determinado objeto y asignarle un servidor que se encargará de procesar
dicho objeto.
Fue diseñada por Javasoft Javasoft para soportar llamadas a procedimientos remotos
entre objetos que se ejecutan sobre Máquinas Virtuales Java (JVM).
Se trata de una implementación independiente de la plataforma, lo que permite que
tanto los objetos remotos como las aplicaciones cliente, residan en sistemas
heterogéneos. Sin embargo no es independiente del lenguaje, tanto el objeto servidor
Java/RMI como el objeto cliente tienen que ser escritos en Java.
Objetivos:
 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) dada por 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
 Es realmente fácil de usar si ya se conoce JAVA.
 Portable a través de plataformas con soporte JAVA.
 Bajo costo al convertir sistema existente.
 Soporta paso de objetos por referencia y/o valor.
Desventajas
 A veces, no es tan intuitivo.
 No soportado por otros lenguajes
 Disminuye el rendimiento con el crecimiento del sistema
Conclusiones:
 Como conclusión general, se debe tener en cuenta el uso de RMI para
aplicaciones tipo cliente/servidor a mediana escala, en donde los clientes estén
muy distribuidos y sea difícil la diversificación de los códigos o el trabajo en
equipo.
 La posibilidad de separar el trabajo, encapsulándolo en aplicaciones cliente
servidor, en donde el cliente y el servidor se desligan a tal grado que no deben
saber nada sobre el trabajo del uno y del otro. Esto es sumamente útil en los
tiempos actuales en donde las aplicaciones cliente servidor son cada vez más
abundantes y la complejidad de ellas hace fundamental la separación del
código en módulos independientes.
 Sin embargo, también es una muy buena alternativa, el considerar IDL, frente a
escenarios heterogéneos, en donde se trabaja con "legacy systems", los cuales
son muy difíciles de cambiar y sin embargo pueden representar una fuerza
importante dentro de una compañía. También se puede recurrir a IDL cuando
la escalabilidad del sistema crece tanto que es imposible poder manejarla con
un sistema tan básico como es RMI.
Bibliografía:
 Dan Harkey, Robert Orfali, Client/Server. Programming with Java and CORBA,
2nd Edition 2nd. Edition (1998) John Wiley & Sons, Inc. ISBN: 0-471-24578-X.
 Cay S. Horstmann, Gary Cornell. Core Java 2, Volume 2: Advanced. Features
4 edition Vol 2 (December 27, 1999) Prentice Hall PTR; ISBN: 0130819344.
 Qusay H. Mahmoud, Distributed. Programming with Java (September 1999)
Manning Publications Company; ISBN: 1884777651.
 Jim Farley, Java: Distributed. Computing (January 1998). O'Reilly & Associates;
ISBN: 1565922069
 www.tamps.cinvestav.mx/~vjsosa/clases/sd/DAAI_RMI.pdf
 www.it.uc3m.es

Mais conteúdo relacionado

Destaque

Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0
Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0
Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0NTEN
 
Jonathan Bean - Mynewsday 2015
Jonathan Bean - Mynewsday 2015Jonathan Bean - Mynewsday 2015
Jonathan Bean - Mynewsday 2015Mynewsdesk
 
Comunicacion Y Relacion Humanas
Comunicacion Y Relacion HumanasComunicacion Y Relacion Humanas
Comunicacion Y Relacion HumanasDiana Romero
 
Directorio de centros de salud con celulares inst
Directorio de centros de salud con celulares instDirectorio de centros de salud con celulares inst
Directorio de centros de salud con celulares instNoe Castillo Saravia
 
Cognizanti11-IoT_high-res-print_TL
Cognizanti11-IoT_high-res-print_TLCognizanti11-IoT_high-res-print_TL
Cognizanti11-IoT_high-res-print_TLAdithya Sastry
 
His Bestprofile Chapter I Global Weighted Selection
His Bestprofile Chapter I  Global Weighted SelectionHis Bestprofile Chapter I  Global Weighted Selection
His Bestprofile Chapter I Global Weighted Selectionlsilvapro
 
Edimax - 2013 SMB solution_guide
Edimax - 2013 SMB  solution_guideEdimax - 2013 SMB  solution_guide
Edimax - 2013 SMB solution_guideSreekanth Menon
 
Triptico
TripticoTriptico
Tripticomarrico
 
Organisational Structure in Support of the IT Knowledge Worker
Organisational Structure in Support of the IT Knowledge WorkerOrganisational Structure in Support of the IT Knowledge Worker
Organisational Structure in Support of the IT Knowledge WorkerGary Merrigan (CITO)
 
Modelo fish bank
Modelo fish bankModelo fish bank
Modelo fish bankandresfega
 
Bleaching/ cosmetic dentistry courses by indian dental academy
Bleaching/ cosmetic dentistry courses by indian dental academyBleaching/ cosmetic dentistry courses by indian dental academy
Bleaching/ cosmetic dentistry courses by indian dental academyIndian dental academy
 
Ilustrasi Bisnis Franchise Raja Dimsum
Ilustrasi Bisnis Franchise Raja DimsumIlustrasi Bisnis Franchise Raja Dimsum
Ilustrasi Bisnis Franchise Raja DimsumRaja Dimsum
 
Yatecomere Your Tapas Company English Catalogue Food Service
Yatecomere Your Tapas Company English Catalogue Food ServiceYatecomere Your Tapas Company English Catalogue Food Service
Yatecomere Your Tapas Company English Catalogue Food ServiceBart Marett
 
Elier sanchez romo
Elier sanchez romoElier sanchez romo
Elier sanchez romosafoelc
 

Destaque (18)

Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0
Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0
Nerd, Geek, and Gear Herding: Technical Management Techniques for Managers v 2.0
 
Jonathan Bean - Mynewsday 2015
Jonathan Bean - Mynewsday 2015Jonathan Bean - Mynewsday 2015
Jonathan Bean - Mynewsday 2015
 
Comunicacion Y Relacion Humanas
Comunicacion Y Relacion HumanasComunicacion Y Relacion Humanas
Comunicacion Y Relacion Humanas
 
Seguridad 360
Seguridad 360Seguridad 360
Seguridad 360
 
Directorio de centros de salud con celulares inst
Directorio de centros de salud con celulares instDirectorio de centros de salud con celulares inst
Directorio de centros de salud con celulares inst
 
Cognizanti11-IoT_high-res-print_TL
Cognizanti11-IoT_high-res-print_TLCognizanti11-IoT_high-res-print_TL
Cognizanti11-IoT_high-res-print_TL
 
His Bestprofile Chapter I Global Weighted Selection
His Bestprofile Chapter I  Global Weighted SelectionHis Bestprofile Chapter I  Global Weighted Selection
His Bestprofile Chapter I Global Weighted Selection
 
Edimax - 2013 SMB solution_guide
Edimax - 2013 SMB  solution_guideEdimax - 2013 SMB  solution_guide
Edimax - 2013 SMB solution_guide
 
Program Rough - Aug 15 6PM
Program Rough - Aug 15 6PMProgram Rough - Aug 15 6PM
Program Rough - Aug 15 6PM
 
Triptico
TripticoTriptico
Triptico
 
Organisational Structure in Support of the IT Knowledge Worker
Organisational Structure in Support of the IT Knowledge WorkerOrganisational Structure in Support of the IT Knowledge Worker
Organisational Structure in Support of the IT Knowledge Worker
 
Modelo fish bank
Modelo fish bankModelo fish bank
Modelo fish bank
 
Bleaching/ cosmetic dentistry courses by indian dental academy
Bleaching/ cosmetic dentistry courses by indian dental academyBleaching/ cosmetic dentistry courses by indian dental academy
Bleaching/ cosmetic dentistry courses by indian dental academy
 
Ilustrasi Bisnis Franchise Raja Dimsum
Ilustrasi Bisnis Franchise Raja DimsumIlustrasi Bisnis Franchise Raja Dimsum
Ilustrasi Bisnis Franchise Raja Dimsum
 
Yatecomere Your Tapas Company English Catalogue Food Service
Yatecomere Your Tapas Company English Catalogue Food ServiceYatecomere Your Tapas Company English Catalogue Food Service
Yatecomere Your Tapas Company English Catalogue Food Service
 
Exposicion metodologia
Exposicion metodologiaExposicion metodologia
Exposicion metodologia
 
Adaptacion de la oferta a la demanda del cliente
Adaptacion de la oferta a la demanda del clienteAdaptacion de la oferta a la demanda del cliente
Adaptacion de la oferta a la demanda del cliente
 
Elier sanchez romo
Elier sanchez romoElier sanchez romo
Elier sanchez romo
 

Semelhante a RMI

Carasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharCarasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharudalrico
 
Universidad nacional de chimborazo
Universidad nacional de chimborazoUniversidad nacional de chimborazo
Universidad nacional de chimborazoJesica Pérez
 
POOI- Unidad 1.pdf
POOI- Unidad 1.pdfPOOI- Unidad 1.pdf
POOI- Unidad 1.pdfWillGuzman3
 
Conceptos de programación orientada a objeto
Conceptos de programación orientada a objetoConceptos de programación orientada a objeto
Conceptos de programación orientada a objetoJJ
 
Estudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVAEstudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVAHelmilpa
 
Mi Lenguaje de Programación Preferido
Mi Lenguaje de Programación PreferidoMi Lenguaje de Programación Preferido
Mi Lenguaje de Programación Preferidostylee4799
 
Trabajo java
Trabajo javaTrabajo java
Trabajo javaamec0612
 
Diapositivas De Java Rmi
Diapositivas De Java  RmiDiapositivas De Java  Rmi
Diapositivas De Java Rmisandra milena
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVAjesanchez5
 
Introducción a java
Introducción a javaIntroducción a java
Introducción a javawaldinelly
 
Motor de persistencia nhibernate
Motor de persistencia nhibernateMotor de persistencia nhibernate
Motor de persistencia nhibernateDamian Palacios
 

Semelhante a RMI (20)

Carasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharCarasteristicas de compiladores sheshar
Carasteristicas de compiladores sheshar
 
Qué es java
Qué es javaQué es java
Qué es java
 
Universidad nacional de chimborazo
Universidad nacional de chimborazoUniversidad nacional de chimborazo
Universidad nacional de chimborazo
 
Rmi
RmiRmi
Rmi
 
POOI- Unidad 1.pdf
POOI- Unidad 1.pdfPOOI- Unidad 1.pdf
POOI- Unidad 1.pdf
 
Conceptos de programación orientada a objeto
Conceptos de programación orientada a objetoConceptos de programación orientada a objeto
Conceptos de programación orientada a objeto
 
Laboratorio de programación II
Laboratorio de programación IILaboratorio de programación II
Laboratorio de programación II
 
Estudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVAEstudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVA
 
Mi Lenguaje de Programación Preferido
Mi Lenguaje de Programación PreferidoMi Lenguaje de Programación Preferido
Mi Lenguaje de Programación Preferido
 
Trabajo java
Trabajo javaTrabajo java
Trabajo java
 
Sesion03 apuntes
Sesion03 apuntesSesion03 apuntes
Sesion03 apuntes
 
Diapositivas De Java Rmi
Diapositivas De Java  RmiDiapositivas De Java  Rmi
Diapositivas De Java Rmi
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVA
 
20001215 Programación de Servlets y WML
20001215   Programación de Servlets y WML20001215   Programación de Servlets y WML
20001215 Programación de Servlets y WML
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
Introducción a java
Introducción a javaIntroducción a java
Introducción a java
 
Java Rmi
Java  RmiJava  Rmi
Java Rmi
 
Java Rmi[1]
Java  Rmi[1]Java  Rmi[1]
Java Rmi[1]
 
Motor de persistencia nhibernate
Motor de persistencia nhibernateMotor de persistencia nhibernate
Motor de persistencia nhibernate
 
Java
Java Java
Java
 

Mais de Jonathan Llerena Stifler (14)

Examen final
Examen finalExamen final
Examen final
 
Examen parcial 2
Examen parcial 2Examen parcial 2
Examen parcial 2
 
Sockets
SocketsSockets
Sockets
 
Replicación de una Base de Datos
Replicación de una Base de DatosReplicación de una Base de Datos
Replicación de una Base de Datos
 
Cs2 replicacion de una bd
Cs2 replicacion de una bdCs2 replicacion de una bd
Cs2 replicacion de una bd
 
Modelo, Método y Metodología
Modelo, Método y MetodologíaModelo, Método y Metodología
Modelo, Método y Metodología
 
Interfaz en Java y en C#
Interfaz en Java y en C#Interfaz en Java y en C#
Interfaz en Java y en C#
 
Ensayo Cliente Servidor
Ensayo Cliente ServidorEnsayo Cliente Servidor
Ensayo Cliente Servidor
 
Dominios en Base de Datos
Dominios en Base de DatosDominios en Base de Datos
Dominios en Base de Datos
 
Cs2 dominios en bd
Cs2 dominios en bdCs2 dominios en bd
Cs2 dominios en bd
 
Distros de Linux
Distros de LinuxDistros de Linux
Distros de Linux
 
Corba
CorbaCorba
Corba
 
Ciclo de Vida de una Base de Datos
Ciclo de Vida de una Base de DatosCiclo de Vida de una Base de Datos
Ciclo de Vida de una Base de Datos
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 

Último

Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 

Último (15)

Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 

RMI

  • 1. UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES “UNIANDES” FACULTAD DE SISTEMAS CARRERA: INGENIERÍA EN SISTEMAS OCTAVO NIVEL Tema: RMI Asignatura: Cliente Servidor 2 Nombre: Jonathan Llerena Docente: Ing. Bernabé Ortega 2015
  • 2. RMI es un paquete de JAVA que permite manejar objetos y sus respectivos métodos de manera remota, para utilizar los recursos de un servidor de manera transparente para el usuario local. La conectividad de RMI se ocupa una herramienta de JAVA, llamada RMI Registry. El RMI Registry puede estar localizado en un lugar distinto al servidor, y se encarga de registrar un determinado objeto y asignarle un servidor que se encargará de procesar dicho objeto. Fue diseñada por Javasoft Javasoft para soportar llamadas a procedimientos remotos entre objetos que se ejecutan sobre Máquinas Virtuales Java (JVM). Se trata de una implementación independiente de la plataforma, lo que permite que tanto los objetos remotos como las aplicaciones cliente, residan en sistemas heterogéneos. Sin embargo no es independiente del lenguaje, tanto el objeto servidor Java/RMI como el objeto cliente tienen que ser escritos en Java. Objetivos:  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) dada por 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  Es realmente fácil de usar si ya se conoce JAVA.  Portable a través de plataformas con soporte JAVA.  Bajo costo al convertir sistema existente.  Soporta paso de objetos por referencia y/o valor. Desventajas  A veces, no es tan intuitivo.  No soportado por otros lenguajes  Disminuye el rendimiento con el crecimiento del sistema Conclusiones:  Como conclusión general, se debe tener en cuenta el uso de RMI para aplicaciones tipo cliente/servidor a mediana escala, en donde los clientes estén muy distribuidos y sea difícil la diversificación de los códigos o el trabajo en equipo.  La posibilidad de separar el trabajo, encapsulándolo en aplicaciones cliente servidor, en donde el cliente y el servidor se desligan a tal grado que no deben saber nada sobre el trabajo del uno y del otro. Esto es sumamente útil en los tiempos actuales en donde las aplicaciones cliente servidor son cada vez más
  • 3. abundantes y la complejidad de ellas hace fundamental la separación del código en módulos independientes.  Sin embargo, también es una muy buena alternativa, el considerar IDL, frente a escenarios heterogéneos, en donde se trabaja con "legacy systems", los cuales son muy difíciles de cambiar y sin embargo pueden representar una fuerza importante dentro de una compañía. También se puede recurrir a IDL cuando la escalabilidad del sistema crece tanto que es imposible poder manejarla con un sistema tan básico como es RMI. Bibliografía:  Dan Harkey, Robert Orfali, Client/Server. Programming with Java and CORBA, 2nd Edition 2nd. Edition (1998) John Wiley & Sons, Inc. ISBN: 0-471-24578-X.  Cay S. Horstmann, Gary Cornell. Core Java 2, Volume 2: Advanced. Features 4 edition Vol 2 (December 27, 1999) Prentice Hall PTR; ISBN: 0130819344.  Qusay H. Mahmoud, Distributed. Programming with Java (September 1999) Manning Publications Company; ISBN: 1884777651.  Jim Farley, Java: Distributed. Computing (January 1998). O'Reilly & Associates; ISBN: 1565922069  www.tamps.cinvestav.mx/~vjsosa/clases/sd/DAAI_RMI.pdf  www.it.uc3m.es