SlideShare una empresa de Scribd logo
1 de 10
JAVA RMI

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 provee de un
  mecanismo simple para la comunicación
  de     servidores    en    aplicaciones
  distribuidas basadas exclusivamente en
  Java.
OBJETIVO
El objetivo principal de RMI es la de permitir a los
   programadores el desarrollo de programas distribuidos
   en JAVA, usando la misma sintaxis y semántica de los
   programas no distribuidos.
JAVA RMI Y SU CONEXIÓN

RMI como extensión de Java, es una
 tecnología    de     programación,  fue
 diseñada para resolver problemas
 escribiendo y organizando código
 ejecutable. Así RMI constituye un punto
 específico en el espacio de las
 tecnologías de programación junto con
 C, C++, Smalltalk, etc.
DIAGRAMA GENERAL.




    Diagrama general se puede ver como un modelo de 4 capas.
CAPAS
La primera capa es la de aplicación y se corresponde con la
   implementación real de las aplicaciones cliente y servidor
La segunda capa es la capa proxy, o capa stub-skeleton. Esta capa es la
   que interactúa directamente con la capa de aplicación. Todas las
   llamadas a objetos remotos y acciones junto con sus parámetros y
   retorno de objetos tienen lugar en esta capa.
La tercera capa es la de referencia remota, y es responsable del manejo de
    la parte semántica de las invocaciones remotas.
La 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. El protocolo de transporte subyacente para RMI es
   JRMP (Java Remote Method Protocol), que solamente es
   "comprendido" por programas Java.
CARACTERÍSTICAS
• RMI se caracteriza por la facilidad de su uso en la
  programación por estar específicamente diseñado para
  Java;
• Proporciona paso de objetos por referencia (no permitido
  por SOAP),
• Recolección de basura distribuida (Garbage Collector
  distribuido) y paso de tipos arbitrarios (funcionalidad no
  provista por CORBA).
• Por medio de RMI, un programa Java puede exportar un
  objeto, lo que significa que éste queda accesible a través
  de la red y el programa permanece a la espera de
  peticiones en un puerto TCP. A partir de este momento,
  un cliente puede conectarse e invocar los métodos
  proporcionados por el objeto.
LIMITACIONES
RMI tiene algunas limitaciones debido a su
 estrecha integración con Java, la principal de
 ellas es que esta tecnología no permite la
 interacción con aplicaciones escritas en otro
 lenguaje.
LA INVOCACION SE COMPONE DE
• Encapsulado (marshalling) de los parámetros (utilizando
  la funcionalidad de serializacíon de Java).
• Invocación del método (del cliente sobre el servidor). El
  invocador se queda esperando una respuesta.
• Al terminar la ejecución, el servidor serializa el valor de
  retorno (si lo hay) y lo envía al cliente.
• El código cliente recibe la respuesta y continúa como si
  la invocación hubiera sido local.
Invocación de métodos remotos (rmi)

Más contenido relacionado

La actualidad más candente

Redes Avanzadas; Protocolos de enrutamientos
Redes  Avanzadas; Protocolos de enrutamientos Redes  Avanzadas; Protocolos de enrutamientos
Redes Avanzadas; Protocolos de enrutamientos Victor Ramirez Pulido
 
Ejercicio resuelto de punto de caso de uso
Ejercicio resuelto de punto de caso de usoEjercicio resuelto de punto de caso de uso
Ejercicio resuelto de punto de caso de usoAdri Campos
 
Concepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson PenkerConcepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson PenkerMarcos Omar Cruz Ortrega
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xmlJuan Anaya
 
LINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCH
LINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCHLINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCH
LINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCHPerozoAlejandro
 
03 gestión de pruebas de software diseño de casos de pruebas
03 gestión de pruebas de software   diseño de casos de pruebas03 gestión de pruebas de software   diseño de casos de pruebas
03 gestión de pruebas de software diseño de casos de pruebasAntonio Quiña
 
Modelo requisitos UML
Modelo requisitos UMLModelo requisitos UML
Modelo requisitos UMLramirezjaime
 
Modelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones webModelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones webMaritzaD
 
Rmi remote method invocation
Rmi  remote method invocationRmi  remote method invocation
Rmi remote method invocationVERONICA PONCE
 
diagramas de interaccion
diagramas de interacciondiagramas de interaccion
diagramas de interaccionjent46
 
Diagrama componentes
Diagrama componentesDiagrama componentes
Diagrama componentesmarianela0393
 
Ssoo cuadro comparativo
Ssoo  cuadro comparativoSsoo  cuadro comparativo
Ssoo cuadro comparativoalixonrios
 
Metodologia incremental
Metodologia incrementalMetodologia incremental
Metodologia incrementalAnel Sosa
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clasesRamiro Estigarribia Canese
 
Fundamentos de Calidad del Software - Modelos y Estándares
Fundamentos de Calidad del Software - Modelos y EstándaresFundamentos de Calidad del Software - Modelos y Estándares
Fundamentos de Calidad del Software - Modelos y EstándaresLuis Eduardo Pelaez Valencia
 

La actualidad más candente (20)

Redes Avanzadas; Protocolos de enrutamientos
Redes  Avanzadas; Protocolos de enrutamientos Redes  Avanzadas; Protocolos de enrutamientos
Redes Avanzadas; Protocolos de enrutamientos
 
UML - Analisis de Sistemas
UML - Analisis de SistemasUML - Analisis de Sistemas
UML - Analisis de Sistemas
 
Ejercicio resuelto de punto de caso de uso
Ejercicio resuelto de punto de caso de usoEjercicio resuelto de punto de caso de uso
Ejercicio resuelto de punto de caso de uso
 
Concepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson PenkerConcepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson Penker
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
LINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCH
LINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCHLINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCH
LINEAS DE PRODUCTOS DE SOFTWARE Y MÉTODO WATCH
 
03 gestión de pruebas de software diseño de casos de pruebas
03 gestión de pruebas de software   diseño de casos de pruebas03 gestión de pruebas de software   diseño de casos de pruebas
03 gestión de pruebas de software diseño de casos de pruebas
 
Modelo requisitos UML
Modelo requisitos UMLModelo requisitos UML
Modelo requisitos UML
 
13.diseño de web apps
13.diseño de web apps13.diseño de web apps
13.diseño de web apps
 
Modelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones webModelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones web
 
Trabajo Practico 1
Trabajo Practico 1Trabajo Practico 1
Trabajo Practico 1
 
Rmi remote method invocation
Rmi  remote method invocationRmi  remote method invocation
Rmi remote method invocation
 
Uml
UmlUml
Uml
 
diagramas de interaccion
diagramas de interacciondiagramas de interaccion
diagramas de interaccion
 
Diagrama componentes
Diagrama componentesDiagrama componentes
Diagrama componentes
 
Ssoo cuadro comparativo
Ssoo  cuadro comparativoSsoo  cuadro comparativo
Ssoo cuadro comparativo
 
Metodologia incremental
Metodologia incrementalMetodologia incremental
Metodologia incremental
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clases
 
Fundamentos de Calidad del Software - Modelos y Estándares
Fundamentos de Calidad del Software - Modelos y EstándaresFundamentos de Calidad del Software - Modelos y Estándares
Fundamentos de Calidad del Software - Modelos y Estándares
 
Como Documentar Casos De Uso
Como Documentar Casos De UsoComo Documentar Casos De Uso
Como Documentar Casos De Uso
 

Destacado

Estructura d capas rmi
Estructura d capas rmiEstructura d capas rmi
Estructura d capas rmiHolger Sanchez
 
Glosrio de términos de informática
Glosrio de términos de informáticaGlosrio de términos de informática
Glosrio de términos de informáticaguest2a6f8a5
 
Conclusiones, Glosario de conceptos y referencias
Conclusiones, Glosario de conceptos y referenciasConclusiones, Glosario de conceptos y referencias
Conclusiones, Glosario de conceptos y referenciasNexusFarma.com
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure callsAshish Kumar
 
Semana 13 sistemas distribuidos
Semana 13   sistemas distribuidosSemana 13   sistemas distribuidos
Semana 13 sistemas distribuidosTerryJoss
 

Destacado (8)

Estructura d capas rmi
Estructura d capas rmiEstructura d capas rmi
Estructura d capas rmi
 
Glosrio de términos de informática
Glosrio de términos de informáticaGlosrio de términos de informática
Glosrio de términos de informática
 
RPC
RPCRPC
RPC
 
Apunte unidad 3
Apunte unidad 3Apunte unidad 3
Apunte unidad 3
 
Components of client server application
Components of client server applicationComponents of client server application
Components of client server application
 
Conclusiones, Glosario de conceptos y referencias
Conclusiones, Glosario de conceptos y referenciasConclusiones, Glosario de conceptos y referencias
Conclusiones, Glosario de conceptos y referencias
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure calls
 
Semana 13 sistemas distribuidos
Semana 13   sistemas distribuidosSemana 13   sistemas distribuidos
Semana 13 sistemas distribuidos
 

Similar a Invocación de métodos remotos (rmi)

Similar a Invocación de métodos remotos (rmi) (20)

Java Rmi
Java  RmiJava  Rmi
Java Rmi
 
Java Rmi[1]
Java  Rmi[1]Java  Rmi[1]
Java Rmi[1]
 
Diapositivas De Java Rmi
Diapositivas De Java  RmiDiapositivas De Java  Rmi
Diapositivas De Java Rmi
 
Rmi
RmiRmi
Rmi
 
Actividad 16
Actividad 16Actividad 16
Actividad 16
 
Rmi
RmiRmi
Rmi
 
RMI
RMIRMI
RMI
 
.Net Remoting
.Net Remoting.Net Remoting
.Net Remoting
 
R_QuintoNevarez
R_QuintoNevarezR_QuintoNevarez
R_QuintoNevarez
 
Carasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharCarasteristicas de compiladores sheshar
Carasteristicas de compiladores sheshar
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on rails
 
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
 
Presentacion jade
Presentacion jadePresentacion jade
Presentacion jade
 
Rpc te
Rpc teRpc te
Rpc te
 
Ejemplosencillocon rmi
Ejemplosencillocon rmiEjemplosencillocon rmi
Ejemplosencillocon rmi
 
Trabajo de programacion
Trabajo de programacionTrabajo de programacion
Trabajo de programacion
 
Presentacion de ruby
Presentacion de rubyPresentacion de ruby
Presentacion de ruby
 
Presentacion
Presentacion Presentacion
Presentacion
 
Pruebas soap
Pruebas soapPruebas soap
Pruebas soap
 
Rmi
RmiRmi
Rmi
 

Invocación de métodos remotos (rmi)

  • 1.
  • 2. JAVA RMI 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 provee de un mecanismo simple para la comunicación de servidores en aplicaciones distribuidas basadas exclusivamente en Java.
  • 3. OBJETIVO El objetivo principal de RMI es la de permitir a los programadores el desarrollo de programas distribuidos en JAVA, usando la misma sintaxis y semántica de los programas no distribuidos.
  • 4. JAVA RMI Y SU CONEXIÓN RMI como extensión de Java, es una tecnología de programación, fue diseñada para resolver problemas escribiendo y organizando código ejecutable. Así RMI constituye un punto específico en el espacio de las tecnologías de programación junto con C, C++, Smalltalk, etc.
  • 5. DIAGRAMA GENERAL. Diagrama general se puede ver como un modelo de 4 capas.
  • 6. CAPAS La primera capa es la de aplicación y se corresponde con la implementación real de las aplicaciones cliente y servidor La segunda capa es la capa proxy, o capa stub-skeleton. Esta capa es la que interactúa directamente con la capa de aplicación. Todas las llamadas a objetos remotos y acciones junto con sus parámetros y retorno de objetos tienen lugar en esta capa. La tercera capa es la de referencia remota, y es responsable del manejo de la parte semántica de las invocaciones remotas. La 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. El protocolo de transporte subyacente para RMI es JRMP (Java Remote Method Protocol), que solamente es "comprendido" por programas Java.
  • 7. CARACTERÍSTICAS • RMI se caracteriza por la facilidad de su uso en la programación por estar específicamente diseñado para Java; • Proporciona paso de objetos por referencia (no permitido por SOAP), • Recolección de basura distribuida (Garbage Collector distribuido) y paso de tipos arbitrarios (funcionalidad no provista por CORBA). • Por medio de RMI, un programa Java puede exportar un objeto, lo que significa que éste queda accesible a través de la red y el programa permanece a la espera de peticiones en un puerto TCP. A partir de este momento, un cliente puede conectarse e invocar los métodos proporcionados por el objeto.
  • 8. LIMITACIONES RMI tiene algunas limitaciones debido a su estrecha integración con Java, la principal de ellas es que esta tecnología no permite la interacción con aplicaciones escritas en otro lenguaje.
  • 9. LA INVOCACION SE COMPONE DE • Encapsulado (marshalling) de los parámetros (utilizando la funcionalidad de serializacíon de Java). • Invocación del método (del cliente sobre el servidor). El invocador se queda esperando una respuesta. • Al terminar la ejecución, el servidor serializa el valor de retorno (si lo hay) y lo envía al cliente. • El código cliente recibe la respuesta y continúa como si la invocación hubiera sido local.