Está en la página 1de 22

Temas: 8.

1 Arquitectura CORBA
8.2 CORBA RMI
8.3 Referencias a objetos
remotos CORBA


Integrantes:
 Tapia

Miranda Alejandra

 Chvez

Gmez Agustn

Introduccin


El OMG (The Object Management Group) se form en 1989 con el fin


de fomentar la adopcin de sistemas de objetos distribuidos con el
objetivo de obtener los beneficios de la orientacin a objetos de
programacin para el desarrollo de software.

Dise un idioma de interfaz que es independiente de cualquier lenguaje


de implementacin.

Ellos introdujeron ORB cuyo papel es el de ayudar a un cliente para


invocar un mtodo en un objeto. Este implica la localizacin del objeto,
activando el objeto si es necesario y luego comunicar la solicitud del
cliente al objeto, lo que lo lleva a cabo y las respuestas.

CORBA


CORBA es un diseo de middleware que permite a los programas de aplicacin se


comuniquen entre s con independencia de sus lenguajes de programacin, su
hardware y plataformas de software, las redes que se comunican a travs y sus
ejecutores.

Las aplicaciones se construyen a partir de los objetos CORBA, que implementan


interfaces definidas en Lenguaje de definicin de interfaz de CORBA, IDL.

Arquitectura Corba
Est diseado para apoyar la funcin de un intermediario de peticiones objeto que
permite a los clientes invocar mtodos de objetos remotos, donde los clientes y los
servidores pueden ser implementados en una variedad de lenguajes de programacin.

Ncleo ORB
El papel del ncleo del ORB incluye toda la funcionalidad del mdulo de
comunicacin adems proporciona una interfaz que incluye lo siguiente
operaciones


Las que le permitan iniciarse y detenerse;

Las operaciones de conversin entre las referencias a objetos remotos y


cadenas;

las operaciones para proporcionar listas de argumentos de solicitudes utilizando


la invocacin dinmica.

Adaptador de objetos
El papel de un adaptador es el camino o puente entre los objetos CORBA
con interfaces IDL y las interfaces de lenguaje de programacin de las
correspondientes clases sirvientes(servant), esta tiene la funcin de:




Se crea referencias a objetos remotos para objetos CORBA


Distribuye cada RMI a travs de un esqueleto para el (servant) sirviente
apropiado.
Activa y desactiva sirvientes.

Da a cada objeto corba un nombre de objeto nico, que forma parte de


su referencia al objeto remoto.
Cada objeto CORBA se ha registrado en el adaptador de objeto, que
mantiene un control remoto de tabla de objetos que mapea los nombres
de objetos CORBA a sus sirvientes.

Adaptador de objeto portable(POA)


Estndar para los adaptadores de objeto

Permite a las aplicaciones y los servidores ser ejecutados en los ORB


producidos por diferentes desarrolladores. Esto se logra por medio de
la estandarizacin de las clases de esqueleto y de la interacciones
entre el POA y los sirvientes.
El POA es compatible con objetos CORBA con dos diferentes tiempos
de vida:


aquellos cuyas vidas se limitan a la del proceso en el que sus


sirvientes son instanciados;(objetos transitorios)

aquellos cuya duracin puede abarcar las instancias de los


sirvientes en mltiples procesos.(objetos permanentes)

El valor predeterminado es que un slo servidor puede representar todos los


objetos CORBA por su POA.

Tenga en cuenta que las implementaciones de CORBA proporcionan interfaces


para la funcionalidad del POA y el ncleo del ORB mediante pseudo-objetos,
dado este nombre porque no pueden ser utilizados como objetos normales
CORBA.

El pseudo-objeto POA incluye:


un mtodo para activar un POA manager
servant_to_reference, para el registro de un objeto CORBA

El pseudo-objeto ORB incluye;


el mtodo init, que deben ser llamados a inicializar el ORB,
el mtodo resolve_initial_references, que se utiliza para encontrar los servicios

Compilador IDL


Interfaces IDL pueden tener atributos as como los mtodos. Los atributos son
como campos de clase pblica en Java. Los atributos pueden ser definidos como
de slo lectura cuando sea apropiado.

Los atributos son privados a objetos CORBA, pero para cada atributo declarado, un
par de mtodos de acceso se genera automticamente por el compilador de IDL;
1) para recuperar el valor del atributo (get).
2) el otro para fijar(set).
Para los atributos de slo lectura, slo se proporciona mtodo get.

Skeletons
Clases de Skeleton se generan en el idioma del servidor por un
compilador de IDL. La invocaciones de mtodos remotos se envan a
travs del esqueleto apropiada a un sirviente particular, el esqueleto
con los argumentos a los mensajes de solicitud y los resultados en los
mensajes de respuesta.

Client Stubs/ proxies


Estos son en el idioma del cliente. La clase de un proxy (para
lenguajes orientados a objetos), o un conjunto de procedimientos de
registro (para las lenguajes de procedimiento) se genera a partir de
una interfaz IDL por un compilador de IDL para el idioma del cliente.

Repositorio de Implementacin (Implementation repository)


Este es responsable de la activacin de los servidores registrados y para la
localizacin de los servidores que se estn ejecutando actualmente.
Un repositorio de la implementacin almacena una asignacin de los nombres de los
adaptadores de objeto para la ruta de los archivos que contienen implementaciones
de objetos.
Cuando las implementaciones de objetos estn activados en los servidores, el
hostname y el nmero del puerto son agregados:
Entrada del repositorio de implementacin:

nombre del
adaptador
de objeto

nombre de
ruta de
implementa
cin del
objeto

nombre de
host y
nmero de
puerto del
servidor

Repositorio de interfaz
El papel del repositorio de interfaz es proporcionar informacin sobre
las interfaces IDL registrados a los clientes y servidores que lo requieran.

Interfaz de invocacin dinmica


La interfaz de invocacin dinmica permite a los clientes para hacer
invocaciones dinmicas sobre objetos CORBA remotos. Se utiliza
cuando no es prctico emplear proxies.
El cliente puede obtener desde el repositorio de interfaz de la
informacin necesaria acerca de los mtodos disponibles para un
objeto CORBA dado.
El cliente puede utilizar esta informacin para construir una invocacin
con argumentos adecuados y enviarlo al servidor.

Esqueletos dinmicos
Si un servidor utiliza esqueletos dinmicos, entonces se puede aceptar
invocaciones en la interfaz de un objeto CORBA para el que no tiene
esqueleto.
Cuando un esqueleto dinmico recibe una invocacin, se inspecciona el
contenido de la solicitud a descubrir su objeto de destino, el mtodo que
se invoca y los argumentos. Despus, invoca el objetivo.

Legacy code
Se refiere al cdigo existente que no fue diseado con objetos
distribuidos.
Un pedazo de cdigo heredado puede ser convertido en un objeto
CORBA mediante la definicin de una interfaz IDL para ella y que
proporciona una implementacin de un objeto adaptador apropiado y
los esqueletos necesarios

CORBA RMI
RMI
(Invocacin de un mtodo robusto)

CORBA
(Common Object Request Broker
Architecture)

Mecanismo para la comunicacin de


servidores en aplicaciones distribuidas

Estndar que facilita el desarrollo de


aplicaciones distribuidas en entornos
heterogneos

Protocolo JRMP

Protocolo IIOP

Un programa JAVA puede exportar un


objeto y este estar accesible a travs
de la red y el programa permanecera a
la espera de peticiones en un puerto
TCP

Brinda una tecnologa orientada a


objetos, las funciones y los datos se
agrupan en objetos y estos pueden
estar en diferentes maquinas y se
acceder a ellos a travs de funciones
del programa.

RMI
(Invocacin de un mtodo robusto)
El servidor espera a que el cliente
invoque los objetos por medio de las
referencias.

CORBA
(Common Object Request Broker
Architecture)
Transparencia de distribucin: ni cliente ni
servidor necesitan saber si la aplicacin
esta distribuida o centralizada, el sistema
se encarga de eso.
Transparencia de localizacin: el cliente
no necesita saber donde ejecuta el
servicio y el servicio no necesita saber
donde ejecuta el cliente.
Activacin de objetos: los objetos remotos
no tienen por qu estar en memoria
permanentemente, y se hace de manera
invisible.

REFERENCIAS A OBJETOS REMOTOS


CORBA


En CORBA cuando un cliente retiene una referencia a un objeto,


puede invocar los mtodos implementados por el objeto referido.

Un proceso (cliente o servidor) puede utilizar slo una implementacin


dependiente del lenguaje de una referencia a un objeto.

Esta referencia adopta la forma de un apuntador dirigido a la


representacin local del objeto.

Si una referencia quiere pasar del proceso A al proceso B no puede


pasar, ya que tiene significado solo dentro del espacio de A.

Entonces A tiene que organizar el apuntador para convertirlo en una


representacin independiente del proceso.

El RTS proporciona la operacin para transformar la referencia y una


vez transformada se traspasa a B, el cual puede desempacarla otra
vez.

Uno de los problemas con esto era que cada implementacin poda
decidir cmo representar la referencia a un objeto.

Si el proceso A deseaba pasar una referencia a B se lograba solo si


ambos procesos utilizaban la misma implementacin CORBA.

A la representacin independiente del lenguaje de un objeto de


referencia se le llama referencia a objeto interoperable (IOR).

Cuando pasa una referencia a un objeto entre dos sistemas diferentes


CORBA, se pasa como una IOR.

Cada IOR se identifica como un identificador de repositorio.

A este identificador se le asigna una interfaz que sirve para recuperar


informacin sobre una interfaz en tiempo de ejecucin.

Para que este identificador sea til, tanto el cliente como el servidor
deben tener acceso a la misma interfaz.

Los perfiles etiquetados son la parte ms importante de cada IOR.

Cada uno de estos perfiles contiene la informacin necesaria para


invocar a un objeto.

CORBA utiliza el protocolo Inter-ORB de


implementar la comunicacin entre nodos.

ORB (Objetct Request Broker)es el nombre utilizado por CORBA para su


sistema en tiempo de ejecucin basado en objetos, que permite a los
objetos realizar llamadas a mtodos situados en mquinas remotas, a
travs de una red.

internet

(IIOP)

para

IIOP es un protocolo de resguardos para internet dedicado para


invocaciones de mtodos remotos para CORBA.

IIOP sigue una arquitectura cliente servidor para la comunicacin,


donde una solicitud de mensaje se transmite siempre desde un cliente
a un servidor.

Algunas especificaciones para IIOP:


1.

Representacin de datos comn (CDR): proporciona un mtodo de


codificacin de datos / decodificador estndar.

2.

Referencia a Objeto Interoperable (IOR): el cliente debe tener una direccin

de programa antes de enviar una solicitud a un servidor. Se basa en


direcciones IP y nmeros de puerto del servidor.
3.

Formatos de mensaje definidos por ORB.

 Organizacin de un IOR:
1. Campo ProfileID identifica el perfil IIOP en el perfil etiquetado. Se
compone de cinco campos:
1. Versin del IIOP utilizado en el perfil
2. Host: es una cadena que identifica con exactitud en que servidor (nombre
de dominio o IP) esta localizado el objeto.

3.

Nmero de puerto donde el servidor de objetos escucha las peticiones


entrantes.

4.

Clave del objeto que contiene informacin que identificara el adaptador


especifico.

5.

Componentes: contiene ms informacin para indicar como debe ser


manejada la referencia o que hacer en caso de que el servidor referido
no est disponible.

También podría gustarte