Con la tecnología de Blogger.
RSS

RMI (Java Remote Method Invocation).



RMI
(Java Remote Method Invocation)
  •   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.
Características y estructura de RMI
  •  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.
Invocación
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.
un modelo de cuatro capas
  1. Primera Capa: es la de aplicación y corresponde con la implementación real de las aplicaciones cliente y servidor.
  2. 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.
  3. 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.
  4.  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.
Arquitectura de RMI




Skeleton y Stub
  •  Dota a clientes y servidores de una interfaz que les permite localizar objetos remotos para invocar sus métodos como si fueran locales.

El API java RMI
  • 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.


Sistema de Nombrado Registry
  •  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.
 

Desarrollo de Aplicaciones Distribuidas
  •   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.


Paso de Parámetros a través de la Red
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.

Callbacks en RMI
  • 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.


EJEMPLO:

DESCARGAR EJEMPLO :RMI

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentarios:

Publicar un comentario