Download DCOM

Document related concepts
no text concepts found
Transcript
APLICACIONES
DISTRIBUIDAS
HENRY MAURICIO ROMERO
QUIROGA
160001428
APLICACIONES
DISTRIBUIDAS
 DCOM
 RMI
 CORBA
 Netremoting
CORBA
(Common Object Request Broker Architecture
arquitectura común de intermediarios
en peticiones a objetos)
Es un estándar que establece una
plataforma de desarrollo de sistemas
distribuidos facilitando la invocación de
métodos remotos bajo un paradigma
orientado a objetos.
• corba fue definido y está controlado
por el Object Management Group
(OMG) que define las APIs
•“Envuelve" el código escrito en otro
lenguaje en un paquete que
contiene información adicional sobre
las capacidades del código que
contiene, y sobre cómo llamar a sus
métodos.
Tipos de Implementaciones de corba
Ada
C
C++
Smalltalk
Java
Python
Perl
TCL
• Al compilar una interfaz en IDL se
genera código para el cliente y el
servidor (el implementador del
objeto).
CORBA es más que una
especificación multiplataforma,
también define servicios
habitualmente necesarios como
seguridad y transacciones.
•
EJEMPLOS


http://grasia.fdi.ucm.es/jpavon/dso/corba
02ejemplojava.pdf
http://edocs.bea.com/tuxedo/tux80/inter
m/csamples.htm
RMI

RMI (Java Remote Method
Invocation) es un mecanismo
ofrecido en Java para invocar un
método remotamente.
RMI puede darse el lujo de ser muy
amigable para los programadores:
Proveyendo pasaje por referencia de
objetos.
 “Recolección de basura" distribuida.
 Pasaje de tipos arbitrarios

Por medio de RMI, un programa Java
puede exportar un objeto.
Contexto
A pesar de que RMI es un ORB en el
sentido general, no es un modelo
compatible con CORBA.
 RMI es nativo de Java, es decir, es
una extensión al núcleo del lenguaje.
 fue diseñada para resolver problemas
escribiendo y organizando código
ejecutable.

Arquitectura
Primera capa
Es la de aplicación y se corresponde
con la implementación real de las
aplicaciones cliente y servidor.
 Segunda capa
Es la capa proxy, o capa stubskeleton. Esta capa es la que
interactúa directamente con la capa
de aplicación.

Tercera capa
Es la de referencia remota, y es
responsable del manejo de la parte
semántica de las invocaciones
remotas.
 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.

Elementos
Toda aplicación RMI normalmente
se descompone en 2 partes:
1.
2.
Un servidor
Un cliente
DCOM
Distributed Component Object
Model (DCOM), Modelo de
Objetos de Componentes
Distribuidos, es una tecnología
propietaria de Microsoft para
desarrollar componentes software
distribuidos sobre varios ordenadores
y que se comunican entre sí.
En términos de las extensiones que
añade a COM, DCOM tenía que resolver
los problemas de:
Aplanamiento
 Recolección de basura distribuida
Uno de los factores clave para
resolver estos problemas es el uso de
DCE/RPC como el mecanismo RPC
subyacente bajo DCOM.


DCOM fue uno de los mayores
competidores de CORBA. Los
defensores de ambas tecnologías
sostenían que algún día serían el
modelo de código y servicios sobre
Internet.
Versiones alternativas e
implementaciones

El Open Group tiene una
implementación DCOM llamada
COMsource, cuyo código fuente está
disponible, así como la
documentación completa, suficiente
para su uso y suficiente también para
implementar una versión
interoperable de DCOM.

El equipo de Wine también está
implementando DCOM. Lo hacen
para conseguir la interoperabilidad
binaria, y no están interesados en la
parte de distribución sobre la red de
DCOM, que es proporcionada por
MSRPC
NETREMOTING

Microsoft® .NET Remoting
proporciona el marco que permite a
los objetos interactuar entre sí desde
distintos dominios de aplicaciones e
incluye servicios como la activación y
la compatibilidad con la duración de
los objetos, junto con los canales de
comunicación responsables del
transporte de mensajes a y desde
aplicaciones remotas
Los formateadores se emplean para
codificar y descodificar los mensajes
antes de que éstos se envíen por el
canal.
 Las aplicaciones pueden hacer uso de
la codificación binaria en los casos en
los que el rendimiento es un factor
fundamental, o bien, la codificación
XML, en aquellos otros en los que el
aspecto esencial es la
interoperabilidad con otros marcos
remotos.

CANALES

Los canales se utilizan para
transportar mensajes a y desde
objetos remotos. Cuando un cliente
llama a un método en un objeto
remoto, los parámetros, así como
otros detalles relacionados con la
llamada, se transportan a través del
canal al objeto remoto.
La selección del canal está sujeta a las
siguientes reglas:


Al menos un canal debe estar registrado
con el marco de servicios remotos para
poder llamar a un objeto remoto. Los
canales deben registrarse antes que los
objetos.
Los canales se registran por dominio de
aplicación. En un único proceso pueden
existir varios dominios. Cuando el proceso
termina, todos los canales que éste
registra se destruyen automáticamente.
No se puede registrar el mismo canal
que escucha en el mismo puerto más
de una vez.
 Los clientes se pueden comunicar con
el objeto remoto utilizando cualquier
canal registrado. El marco de servicios
remotos garantiza que el objeto
remoto se conecta al canal adecuado
cuando el cliente intenta realizar la
conexión.

EJEMPLOS

http://es.gotdotnet.com/quickstart/howto/
doc/Remoting/quickstart.aspx