Professional Documents
Culture Documents
CARACTERSTICAS:
Facilidad de uso en la programacin por estar
especficamente diseado para JAVA
Proporciona paso de objeto por referencia
Recoleccin de basura distribuida
Paso de tipos arbitrarios
INVOCACIN
1) Encapsulado de los parmetros
2) invocacin del mtodo (del cliente con el servidor). El
invocador se queda esperando una respuesta.
3) Al terminar la ejecucin, el servidor realiza el valor de
retorno y lo enva al cliente
ARQUITECTURA
Puede verse como un modelo de cuatro capas
PRIMERA CAPA: Es la de aplicacin y corresponde con
la implementacin real de las aplicaciones cliente y
servidor
SEGUNDA CAPA: Es la que interacta directamente con
la capa de aplicacin, se encuentran las llamadas a
objetos remotos y acciones junto
CAPAS
TERCERA CAPA: Es la de referencia remota y es
responsable del manejo de la parte semntica de las
invocaciones remota, es responsable de la replicacin
de objetos.
Skeleton y Stub
Dota a clientes y servidores de una interfaz que les
permite localizar objetos remotos para invocar mtodos
como si fueran locales.
JAVA.RMI
-Este paquete proporciona la interfaz Remote y las
clases
MarshalledObject,
Naming
y
RmiSecurityManager,
junto
con
una
serie
de
excepciones. La interfaz Remote, que carece de
mtodos, debe ser implementada por toda clase
remota para que sus mtodos sean accesibles. Si no es
as, Java no la reconocer como tal. -Mediante una
instancia de la clase MarshalledObject se puede
manejar el flujo de bytes serializados de un objeto.
-La clase Naming proporciona mtodos para obtener y
almacenar referencias de los objetos remotos mediante
URLs.
JAVA.RMI.REGISTRY
Este paquete proporciona las interfaces Registry y
RegistryHandler, as como la clase LocateRegistry.
La interfaz Registry define los mtodos bind(), rebind(), y
lookup() (as como otros que no hemos comentado
como son unbind() y list()) de la clase Naming.
Por ltimo, la clase LocateRegistry permite recuperar y,
por tanto, manejar objetos Registry, que representan a
los procesos que ejecutan el servicio de registro RMI, a
partir de un par host-puerto.
Java.rmi.server
Este paquete proporciona una serie de clases,
interfaces y excepciones para el lado servidor de las
aplicaciones RMI. Algunas de sus clases principales son:
JAVA.RMI.ACTIVATION
Permite activar remotamente objetos, desactivarlos
cuando ya no se trabaje con ellos y reactivarlos cuando
sea necesario. Entre activacin y desactivacin,
conservan su estado.
Java.rmi.dgc
Este paquete contiene clases, interfaces y excepciones
para la recoleccion de basura.
Objetivo:
Una aplicacin distribuida es aquella cuyo objetivo final
se alcanza mediante la ejecucin de diversos procesos
independientes que por lo general se ejecuten en
equipos diferentes y que de una forma u otra se pasan
datos
entre
ellos
mediante
protocolos
de
comunicaciones bien establecidos.
Componentes:
-Clientes: Conducen el flujo de la aplicacin. Localizan
e invocan mtodos ofertados como los mtodos
remotos por los servidores.
-Servidores: Conjunto de objetos que ofrecen interfaces
remotas pblicas cuyos mtodos pueden ser
involucrados por clientes de cualquier procesador.
3.7 CALLBACKS
Como la palabra en ingls lo indica un callback es una
llamada de vuelta y este es un concepto importante
al momento de escribir cdigo. Es simple: llamo a una
funcion y le envo por parmetro otra funcin (un
callback) esperando que la funcin que llam se
encargue de ejecutar esa funcin callback.
Callback de Cliente
En RMI, el callback de cliente es una caracterstica que
permite a un objeto cliente registrarse a s mismo con un
objeto servidor remoto para callbacks, de forma que el
servidor pueda llevar a cabo un invocacin al mtodo
del cliente cuando el evento ocurra.