SlideShare una empresa de Scribd logo
1 de 39
Ketnia Nataly Navarrete Méndez 
Stephany Guadalupe Contreras Bahena 
Daniel Alberto Peralta Guzmán 
Fernando Cano Gómez
 3.1. Características y Estructura de RMI 
 3.2. El API Java RMI. 
 3.3. Jerarquía de objetos RMI. 
 3.4. El Sistema de Nombrado Registry. 
 3.5. Desarrollo de Aplicaciones Distribuidas. 
 3.6. Paso de parámetros a través de la red. 
 3.7. Callbacks (Resguardos).
 Es un mecanismo ofrecido por Java para 
invocar un método de manera remota. 
 Forma parte del entorno estándar de 
ejecución de Java y proporciona un 
mecanismo simple para la comunicación de 
servidores en aplicaciones distribuidas 
basadas exclusivamente en Java.
 Facilidad de uso en la programación por 
estar específicamente diseñado para JAVA. 
 Proporciona paso de objetos por referencia. 
 Recolección de basura distribuida. 
 Paso de tipos arbitrarios.
1) Encapsulado de los parámetros. 
2) Invocación del método (del cliente con el 
servidor). El invocador se queda esperando 
una respuesta. 
3) Al terminar la ejecución, el servidor serializa 
el valor de retorno y lo envía al cliente. 
4) El código cliente recibe la respuesta y 
continúa como si la invocación hubiera sido 
local.
 Puede verse como un modelo de cuatro 
capas. 
 Primera Capa: es la de aplicación y 
corresponde con la implementación real de 
las aplicaciones cliente y servidor. 
 Segunda Capa: es la que interactúa 
directamente con la capa de aplicación. Se 
encuentran las llamadas a objetos remotos y 
acciones junto con sus parámetros y retornos 
de objetos.
 Tercera Capa: es la de referencia remota, y es 
responsable del manejo de la parte semántica 
de las invocaciones remotas. Es responsable 
de la replicación de objetos. 
 Cuarta Capa: es la de transporte; es la 
responsable de realizar las conexiones 
necesarias y manejo del transporte de los 
datos de una máquina a otra.
 Dota a clientes y servidores de una interfaz 
que les permite localizar objetos remotos 
para invocar sus métodos como si fueran 
locales.
 Es una interfaz de programación de 
aplicaciones provistas por los creadores del 
lenguaje java, y que da a los programadores 
los medios para desarrollar aplicaciones Java. 
 LA API de Java provee un conjunto de clases 
utilitarias para efectuar toda clase de tareas 
dentro de un programa.
 Implementa 5 paquetes. 
 Java.rmi: contiene Clases, Interfaces y 
Excepciones vistas por los clientes. 
 Java.rmi.server: Contiene clases, Interfaces y 
Excepciones vistas por los servidores. 
 Java.rmi.registry: Contiene Clases, Interfaces 
y Excepciones útiles para localizar y registrar 
objetos remotos.
 Java.rmi.dgc: Contiene Clases, Interfaces y 
Excepciones para la recolección de basura. 
 Java.rmi.activation: Contiene Clases, 
Interfaces y Excepciones para la activación de 
objetos remotos.
Interface Descripción 
Remote La interface remota sirve 
para identificar interfaces 
cuyos métodos pueden 
ser invocados desde una 
máquina local o virtual.
Clase Descripción 
MarshalledObject<T> Un MarshallObject contiene un 
byte con una representación 
serializada de un objeto dado por 
el constructor. 
Naming La clase Naming proporciona 
métodos para almacenamiento y 
obtener referencias de objetos 
remotos en un objeto remoto 
registrado. 
RMISecurityManager Una subclase de SecurityManager 
usada por aplicaciones RMI que 
usa código descargado.
Java.lang.Object 
Java.rmi.server. 
RemoteObject 
Java.rmi.server. 
RemoteServer 
Java.rmi.sever.Uni 
castRemoteObject 
Mi objeto 
remoto 
Java.rmi.Remote 
Mi interface 
remota
 Es un servidor simple que permite que una 
aplicación vea los objetos lo cuales están 
siendo importados por un RMI. 
 Una vez que se tiene un objeto que está 
siendo exportado por un servidor que utiliza 
métodos de RMI, la comunicación es entonces 
como una simple llamada a métodos de un 
objeto que puede existir en una máquina 
diferente.
 Este setup requiere algunos parámetros de 
localización de los objetos remotos. 
 Es fácil llamar a objetos remotos si se tiene 
su ubicación. 
 Una vez que el objeto ha sido localizado, 
usarlo de manera remota es relativamente 
fácil. 
 Para poder inicializar objetos remotos, hay 
que utilizar los servicios de registry.
 Clientes: Conducen el flujo de la aplicación. 
Localizan e invocan métodos ofertados como 
remotos por los servidores. 
 Servidores: Conjunto de objetos de ofrecen 
interfaces remotas públicas cuyos métodos 
pueden ser invocados por clientes de 
cualquier procesador de la plataforma. 
 Registro: Servicio estático que se establece en 
cada nudo, en el que se registran los 
servidores con un nombre, y donde los 
clientes los localizan.
 Objeto remoto: 
◦ Objeto cuyos métodos pueden invocarse desde 
otras máquinas virtuales. 
◦ Descrito por una o más interfaces Remotas en las 
que se declaran los métodos que pueden ser 
invocados por objetos desde otras máquinas 
virtuales. 
 Invocación a métodos remotos: 
◦ Acción de invocar un método de una interfaz 
remota en un objeto remoto. 
◦ Tiene la misma sintaxis de un método local.
 Hay 3 mecanismos básicos 
1) Tipos primitivos: se pasan por valor (copia). 
Todos son serializables. 
2) Objetos Remotos: Se pasan por referencia 
(talones, usados para invocar métodos 
remotos). 
3) Objetos locales: Se pasan por valor (sólo si 
son serializables), se crea un nuevo objeto 
en la máquina virtual que recibe la copia.
 El cliente inscribe un objeto remoto para 
recibir una invocación remota. 
◦ Al ocurrir cierto evento, el servidor realiza una 
devolución a cada cliente interesado.
 El servidor ofrece un método remoto para que el 
cliente registre sus callbacks 
 Hay que diseñar una interfaz remota para el 
callback 
 La interfaz debe incluir un método que será 
invocado en el callbakc desde el servidor 
 E cliente deberá ser una subclase de 
RemoteObject e implementará la interfaz de 
callback 
 El cliente se registrará frente la clase remota 
para ser rellamado. 
 El servidor invoca el método remoto del cliente 
en caso de aparecer el evento indicado.
1) Se ejecuta el servidor de registro RMI, 
rmiregistry, en la máquina que contendrá al 
objeto servidor. 
2) Se crea un objeto en el servidor, se exporta, 
y se registra en el servicio rmiregistry con 
un nombre. (ser crea instancia skeleton). 
3) Se crea el objeto cliente, que llamará a un 
método de la interfaz del objeto remoto.
4) El servidor de registro envía al proceso cliente 
una referencia remota al objeto (stub).Este stub 
contiene la dirección IP del host donde reside el 
objeto remoto, el numero de puerto de escucha 
y el ID del objeto. 
5) El stub serializa los argumentos y envía a la 
capa de referencias remotas una petición de 
conexión. 
6) La capa de referencias remotas indica a la capa 
de transporte que necesita abrir una conexión 
para enviarle el flujo de datos resultante del 
paso anterior.
7) La capa de transporte crea un socket de 
cliente para enviar dicho flujo. 
8) En el host remoto los datos llegan a la capa 
de transporte y el socket servidor asociado 
los lee. 
9) La capa de referencias remotas pasa los 
datos al skeleton. 
10) El skeleton extrae del flujo de datos 
serializado los objetos incluidos y pasa la 
llamada al objeto remoto.
11) El objeto remoto ejecuta el método 
invocado con los argumentos 
proporcionados y, si corresponde devuelve 
un valor al objeto skeleton. 
12) El skeleton envía una petición de conexión a 
la capa de referencias remotas y delega en 
ella el envío de la respuesta. 
13) La capa de referencias remotas serializa la 
respuesta y envía el flujo de bytes 
resultante a la capa de transporte 
indicándole que necesita conexión.
14) La capa de transporte remota abre un 
socket de cliente y envía la respuesta al host 
local. 
15) Ésta llega a la capa de transporte del host 
local y allí un socket servidor lo transmite a 
la capa de referencias remotas. 
16) La capa de referencias remotas extraé la 
información serializada y la envía al stub. 
17) El stub envía el valor devuelto al objeto 
local.

Más contenido relacionado

La actualidad más candente

Modelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capasModelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capasAlex Uhu Colli
 
Capa de presentacion ii
Capa de presentacion iiCapa de presentacion ii
Capa de presentacion iiAnderson_14
 
CAPA DE TRANSPORTE MODELO OSI
CAPA DE TRANSPORTE MODELO OSICAPA DE TRANSPORTE MODELO OSI
CAPA DE TRANSPORTE MODELO OSIAliderek LuMej
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Juan Anaya
 
Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...
Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...
Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...Samhya LLerena
 
Comparativa Arquitectura Cliente/Servidor y Distribuida
Comparativa Arquitectura Cliente/Servidor y DistribuidaComparativa Arquitectura Cliente/Servidor y Distribuida
Comparativa Arquitectura Cliente/Servidor y DistribuidaSergio Olivares
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 
Protocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacionProtocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacionEduardo J Onofre
 
Diapositivas exposicion examen
Diapositivas exposicion examenDiapositivas exposicion examen
Diapositivas exposicion examenFer Rondal
 
IEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de softwareIEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de softwareJesús Navarro
 
C4model - Arquitectura de Software
C4model - Arquitectura de SoftwareC4model - Arquitectura de Software
C4model - Arquitectura de SoftwareRene Guaman-Quinche
 
TAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSTAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSxinithazangels
 
Aplicaciones prácticas de las arquitecturas orientadas al servicio
Aplicaciones prácticas de las arquitecturas orientadas al servicioAplicaciones prácticas de las arquitecturas orientadas al servicio
Aplicaciones prácticas de las arquitecturas orientadas al servicioGrial - University of Salamanca
 

La actualidad más candente (20)

OOSE
OOSEOOSE
OOSE
 
Modelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capasModelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capas
 
Capa de presentacion ii
Capa de presentacion iiCapa de presentacion ii
Capa de presentacion ii
 
CAPA DE TRANSPORTE MODELO OSI
CAPA DE TRANSPORTE MODELO OSICAPA DE TRANSPORTE MODELO OSI
CAPA DE TRANSPORTE MODELO OSI
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.
 
Sistema de Archivos Distribuidos
Sistema de Archivos DistribuidosSistema de Archivos Distribuidos
Sistema de Archivos Distribuidos
 
Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...
Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...
Importancia de los Sistemas Cliente Servidor, su arquitectura y describir sus...
 
Comparativa Arquitectura Cliente/Servidor y Distribuida
Comparativa Arquitectura Cliente/Servidor y DistribuidaComparativa Arquitectura Cliente/Servidor y Distribuida
Comparativa Arquitectura Cliente/Servidor y Distribuida
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
RPC
RPCRPC
RPC
 
Protocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacionProtocolos de las capas sesion,presentacion y aplicacion
Protocolos de las capas sesion,presentacion y aplicacion
 
RPC
RPCRPC
RPC
 
Diapositivas exposicion examen
Diapositivas exposicion examenDiapositivas exposicion examen
Diapositivas exposicion examen
 
IEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de softwareIEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de software
 
C4model - Arquitectura de Software
C4model - Arquitectura de SoftwareC4model - Arquitectura de Software
C4model - Arquitectura de Software
 
TAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSTAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOS
 
Aplicaciones prácticas de las arquitecturas orientadas al servicio
Aplicaciones prácticas de las arquitecturas orientadas al servicioAplicaciones prácticas de las arquitecturas orientadas al servicio
Aplicaciones prácticas de las arquitecturas orientadas al servicio
 
Ensayo Cliente Servidor
Ensayo Cliente ServidorEnsayo Cliente Servidor
Ensayo Cliente Servidor
 
Diagrama de estado
Diagrama de estadoDiagrama de estado
Diagrama de estado
 

Similar a Rmi remote method invocation

Semana 13 sistemas distribuidos
Semana 13   sistemas distribuidosSemana 13   sistemas distribuidos
Semana 13 sistemas distribuidosTerryJoss
 
Tema RMI en java e invocación utilizando
Tema RMI en java e invocación utilizandoTema RMI en java e invocación utilizando
Tema RMI en java e invocación utilizandoAntonioFloresLara
 
Comunicación distribuida
Comunicación distribuidaComunicación distribuida
Comunicación distribuidaTensor
 
Comunicación distribuida
Comunicación distribuidaComunicación distribuida
Comunicación distribuidaTensor
 
COMUNICACIÓN DISTRIBUIDA
COMUNICACIÓN DISTRIBUIDACOMUNICACIÓN DISTRIBUIDA
COMUNICACIÓN DISTRIBUIDADiana
 
Estructura d capas rmi
Estructura d capas rmiEstructura d capas rmi
Estructura d capas rmiHolger Sanchez
 
RMI_Concepto_Elementos_Funciones_Ventajas_Desventajas
RMI_Concepto_Elementos_Funciones_Ventajas_DesventajasRMI_Concepto_Elementos_Funciones_Ventajas_Desventajas
RMI_Concepto_Elementos_Funciones_Ventajas_DesventajasStalin Eduardo Tusa Vitar
 
Remote Procedure Call (RPC)
Remote Procedure Call (RPC)Remote Procedure Call (RPC)
Remote Procedure Call (RPC)Taty Millan
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosJaziel Torres
 
Actividad ...... 16
Actividad ...... 16Actividad ...... 16
Actividad ...... 16grachika
 
Comparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De SocketsComparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De Socketsmallita
 

Similar a Rmi remote method invocation (20)

Semana 13 sistemas distribuidos
Semana 13   sistemas distribuidosSemana 13   sistemas distribuidos
Semana 13 sistemas distribuidos
 
Rmi
RmiRmi
Rmi
 
RMI en java
RMI en javaRMI en java
RMI en java
 
11 ad java-rmi
11 ad java-rmi11 ad java-rmi
11 ad java-rmi
 
Tema RMI en java e invocación utilizando
Tema RMI en java e invocación utilizandoTema RMI en java e invocación utilizando
Tema RMI en java e invocación utilizando
 
Java Rmi
Java  RmiJava  Rmi
Java Rmi
 
Java Rmi[1]
Java  Rmi[1]Java  Rmi[1]
Java Rmi[1]
 
Comunicación distribuida
Comunicación distribuidaComunicación distribuida
Comunicación distribuida
 
Comunicación distribuida
Comunicación distribuidaComunicación distribuida
Comunicación distribuida
 
COMUNICACIÓN DISTRIBUIDA
COMUNICACIÓN DISTRIBUIDACOMUNICACIÓN DISTRIBUIDA
COMUNICACIÓN DISTRIBUIDA
 
Estructura d capas rmi
Estructura d capas rmiEstructura d capas rmi
Estructura d capas rmi
 
RMI
RMIRMI
RMI
 
Java Rmi
Java RmiJava Rmi
Java Rmi
 
algorimo distribuidos
algorimo distribuidosalgorimo distribuidos
algorimo distribuidos
 
RMI_Concepto_Elementos_Funciones_Ventajas_Desventajas
RMI_Concepto_Elementos_Funciones_Ventajas_DesventajasRMI_Concepto_Elementos_Funciones_Ventajas_Desventajas
RMI_Concepto_Elementos_Funciones_Ventajas_Desventajas
 
Remote Procedure Call (RPC)
Remote Procedure Call (RPC)Remote Procedure Call (RPC)
Remote Procedure Call (RPC)
 
Ejemplosencillocon rmi
Ejemplosencillocon rmiEjemplosencillocon rmi
Ejemplosencillocon rmi
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Actividad ...... 16
Actividad ...... 16Actividad ...... 16
Actividad ...... 16
 
Comparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De SocketsComparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De Sockets
 

Último

Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinaciónEstacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinaciónAlexisHernandez885688
 
Parámetros de Perforación y Voladura. para Plataformas
Parámetros de  Perforación y Voladura. para PlataformasParámetros de  Perforación y Voladura. para Plataformas
Parámetros de Perforación y Voladura. para PlataformasSegundo Silva Maguiña
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023ANDECE
 
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...Arquitecto Alejandro Gomez cornejo muñoz
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxLuisvila35
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadANDECE
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdffredyflores58
 
Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCANDECE
 
Fisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfFisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfJessLeonelVargasJimn
 
produccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxproduccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxEtse9
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdfSEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdffredyflores58
 
Sistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosSistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosfranchescamassielmor
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfErikNivor
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidasNelsonQuispeQuispitu
 
Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)mendezruben1901
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...humberto espejo
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 

Último (20)

Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinaciónEstacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
 
Parámetros de Perforación y Voladura. para Plataformas
Parámetros de  Perforación y Voladura. para PlataformasParámetros de  Perforación y Voladura. para Plataformas
Parámetros de Perforación y Voladura. para Plataformas
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
 
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidad
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
 
Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRC
 
Fisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfFisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdf
 
produccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxproduccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptx
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdfSEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
 
Sistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosSistema de gestión de turnos para negocios
Sistema de gestión de turnos para negocios
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidas
 
Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
594305198-OPCIONES-TARIFARIAS-Y-CONDICIONES-DE-APLICACION-DE-TARIFAS-A-USUARI...
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 

Rmi remote method invocation

  • 1. Ketnia Nataly Navarrete Méndez Stephany Guadalupe Contreras Bahena Daniel Alberto Peralta Guzmán Fernando Cano Gómez
  • 2.  3.1. Características y Estructura de RMI  3.2. El API Java RMI.  3.3. Jerarquía de objetos RMI.  3.4. El Sistema de Nombrado Registry.  3.5. Desarrollo de Aplicaciones Distribuidas.  3.6. Paso de parámetros a través de la red.  3.7. Callbacks (Resguardos).
  • 3.  Es un mecanismo ofrecido por Java para invocar un método de manera remota.  Forma parte del entorno estándar de ejecución de Java y proporciona un mecanismo simple para la comunicación de servidores en aplicaciones distribuidas basadas exclusivamente en Java.
  • 4.
  • 5.  Facilidad de uso en la programación por estar específicamente diseñado para JAVA.  Proporciona paso de objetos por referencia.  Recolección de basura distribuida.  Paso de tipos arbitrarios.
  • 6. 1) Encapsulado de los parámetros. 2) Invocación del método (del cliente con el servidor). El invocador se queda esperando una respuesta. 3) Al terminar la ejecución, el servidor serializa el valor de retorno y lo envía al cliente. 4) El código cliente recibe la respuesta y continúa como si la invocación hubiera sido local.
  • 7.  Puede verse como un modelo de cuatro capas.  Primera Capa: es la de aplicación y corresponde con la implementación real de las aplicaciones cliente y servidor.  Segunda Capa: es la que interactúa directamente con la capa de aplicación. Se encuentran las llamadas a objetos remotos y acciones junto con sus parámetros y retornos de objetos.
  • 8.  Tercera Capa: es la de referencia remota, y es responsable del manejo de la parte semántica de las invocaciones remotas. Es responsable de la replicación de objetos.  Cuarta Capa: es la de transporte; es la responsable de realizar las conexiones necesarias y manejo del transporte de los datos de una máquina a otra.
  • 9.
  • 10.  Dota a clientes y servidores de una interfaz que les permite localizar objetos remotos para invocar sus métodos como si fueran locales.
  • 11.
  • 12.  Es una interfaz de programación de aplicaciones provistas por los creadores del lenguaje java, y que da a los programadores los medios para desarrollar aplicaciones Java.  LA API de Java provee un conjunto de clases utilitarias para efectuar toda clase de tareas dentro de un programa.
  • 13.  Implementa 5 paquetes.  Java.rmi: contiene Clases, Interfaces y Excepciones vistas por los clientes.  Java.rmi.server: Contiene clases, Interfaces y Excepciones vistas por los servidores.  Java.rmi.registry: Contiene Clases, Interfaces y Excepciones útiles para localizar y registrar objetos remotos.
  • 14.  Java.rmi.dgc: Contiene Clases, Interfaces y Excepciones para la recolección de basura.  Java.rmi.activation: Contiene Clases, Interfaces y Excepciones para la activación de objetos remotos.
  • 15. Interface Descripción Remote La interface remota sirve para identificar interfaces cuyos métodos pueden ser invocados desde una máquina local o virtual.
  • 16. Clase Descripción MarshalledObject<T> Un MarshallObject contiene un byte con una representación serializada de un objeto dado por el constructor. Naming La clase Naming proporciona métodos para almacenamiento y obtener referencias de objetos remotos en un objeto remoto registrado. RMISecurityManager Una subclase de SecurityManager usada por aplicaciones RMI que usa código descargado.
  • 17.
  • 18. Java.lang.Object Java.rmi.server. RemoteObject Java.rmi.server. RemoteServer Java.rmi.sever.Uni castRemoteObject Mi objeto remoto Java.rmi.Remote Mi interface remota
  • 19.
  • 20.  Es un servidor simple que permite que una aplicación vea los objetos lo cuales están siendo importados por un RMI.  Una vez que se tiene un objeto que está siendo exportado por un servidor que utiliza métodos de RMI, la comunicación es entonces como una simple llamada a métodos de un objeto que puede existir en una máquina diferente.
  • 21.  Este setup requiere algunos parámetros de localización de los objetos remotos.  Es fácil llamar a objetos remotos si se tiene su ubicación.  Una vez que el objeto ha sido localizado, usarlo de manera remota es relativamente fácil.  Para poder inicializar objetos remotos, hay que utilizar los servicios de registry.
  • 22.
  • 23.  Clientes: Conducen el flujo de la aplicación. Localizan e invocan métodos ofertados como remotos por los servidores.  Servidores: Conjunto de objetos de ofrecen interfaces remotas públicas cuyos métodos pueden ser invocados por clientes de cualquier procesador de la plataforma.  Registro: Servicio estático que se establece en cada nudo, en el que se registran los servidores con un nombre, y donde los clientes los localizan.
  • 24.
  • 25.  Objeto remoto: ◦ Objeto cuyos métodos pueden invocarse desde otras máquinas virtuales. ◦ Descrito por una o más interfaces Remotas en las que se declaran los métodos que pueden ser invocados por objetos desde otras máquinas virtuales.  Invocación a métodos remotos: ◦ Acción de invocar un método de una interfaz remota en un objeto remoto. ◦ Tiene la misma sintaxis de un método local.
  • 26.
  • 27.  Hay 3 mecanismos básicos 1) Tipos primitivos: se pasan por valor (copia). Todos son serializables. 2) Objetos Remotos: Se pasan por referencia (talones, usados para invocar métodos remotos). 3) Objetos locales: Se pasan por valor (sólo si son serializables), se crea un nuevo objeto en la máquina virtual que recibe la copia.
  • 28.
  • 29.  El cliente inscribe un objeto remoto para recibir una invocación remota. ◦ Al ocurrir cierto evento, el servidor realiza una devolución a cada cliente interesado.
  • 30.
  • 31.
  • 32.  El servidor ofrece un método remoto para que el cliente registre sus callbacks  Hay que diseñar una interfaz remota para el callback  La interfaz debe incluir un método que será invocado en el callbakc desde el servidor  E cliente deberá ser una subclase de RemoteObject e implementará la interfaz de callback  El cliente se registrará frente la clase remota para ser rellamado.  El servidor invoca el método remoto del cliente en caso de aparecer el evento indicado.
  • 33.
  • 34.
  • 35. 1) Se ejecuta el servidor de registro RMI, rmiregistry, en la máquina que contendrá al objeto servidor. 2) Se crea un objeto en el servidor, se exporta, y se registra en el servicio rmiregistry con un nombre. (ser crea instancia skeleton). 3) Se crea el objeto cliente, que llamará a un método de la interfaz del objeto remoto.
  • 36. 4) El servidor de registro envía al proceso cliente una referencia remota al objeto (stub).Este stub contiene la dirección IP del host donde reside el objeto remoto, el numero de puerto de escucha y el ID del objeto. 5) El stub serializa los argumentos y envía a la capa de referencias remotas una petición de conexión. 6) La capa de referencias remotas indica a la capa de transporte que necesita abrir una conexión para enviarle el flujo de datos resultante del paso anterior.
  • 37. 7) La capa de transporte crea un socket de cliente para enviar dicho flujo. 8) En el host remoto los datos llegan a la capa de transporte y el socket servidor asociado los lee. 9) La capa de referencias remotas pasa los datos al skeleton. 10) El skeleton extrae del flujo de datos serializado los objetos incluidos y pasa la llamada al objeto remoto.
  • 38. 11) El objeto remoto ejecuta el método invocado con los argumentos proporcionados y, si corresponde devuelve un valor al objeto skeleton. 12) El skeleton envía una petición de conexión a la capa de referencias remotas y delega en ella el envío de la respuesta. 13) La capa de referencias remotas serializa la respuesta y envía el flujo de bytes resultante a la capa de transporte indicándole que necesita conexión.
  • 39. 14) La capa de transporte remota abre un socket de cliente y envía la respuesta al host local. 15) Ésta llega a la capa de transporte del host local y allí un socket servidor lo transmite a la capa de referencias remotas. 16) La capa de referencias remotas extraé la información serializada y la envía al stub. 17) El stub envía el valor devuelto al objeto local.