Está en la página 1de 11

UNIVERSIDAD NACIONAL DE INTEGRANTES:

TRUJILLO Sistemas DELGADO RODRIGUEZ NILSON.


TEMA:
Distribuidos SABA SÁNCHEZ JHON JAIRO.
CORBA URBINA NARRO CÉSAR.
• Grupo 3
Common Object Request Broker Architecture (CORBA) es un estándar para escribir sistemas de
objetos distribuidos en forma completamente neutral con respecto a la plataforma, lenguaje y
proveedores.
Es una especificación definida por el OMG (Object Management Group) para la creación y uso de objetos
remotos, cuyo objetivo es proporcionar interoperabilidad entre aplicaciones en un entorno distribuido y
heterogéneo.

Su objetivo es ayudar a reducir la complejidad, disminuir los costes y acelerar la introducción


de nuevas aplicaciones informáticas, promoviendo la teoría y la práctica de la tecnología de objetos en los
sistemas distribuidos.
1 Independencia en el lenguaje de programación y sistema operativo: CORBA fue diseñado para
liberar a los ingenieros de las limitaciones en cuanto al diseño del software.
Posibilidad de interacción entre diferentes tecnologías: La posibilidad de normalizar las interfaces entre las
2 diversas tecnologías y poder así combinarlas.

3 Transparencia de distribución: ni cliente ni servidor necesitan saber si la aplicación está distribuida o


centralizada, pues el sistema se ocupa de todo eso.

4 Transparencia de localización

Integración de software existente


5
Activación de objetos
6
1 Define la interfaz del servidor: Define la interfaz del servidor utilizando IDL. Con ello se formaliza que operaciones
ofrece el servidor y como pueden ser invocadas.
Registra la definición en el repositorio de interfaces: La definición de la interfaz se almacena en un repositorio de
2 interfaces, a fin de que en tiempo de ejecución los clientes obtengan la información reflectiva que ofrecen.
Compila la especificación de la interfaz: Compila la especificación IDL y obtienes los ficheros de código Java que se
3 requieren para desarrollar la aplicación: Stub del cliente, esqueleto del servidor y ficheros auxiliares con funciones.

4 Implementa el código del servant: Escribe el código Java que implementa la funcionalidad del servidor.

Compila el código Java del servidor: Compila el código Java utilizando un compilador Java ordinario.
5
Registra el servidor en el repositorio de objetos: Registra los objetos del servidor en el registro de nombres que
6 ofrece el sistema para ser posteriormente localizados por los clientes.

Instancia los objetos del servidor: Crea un adaptador, y a través de él, el servidor queda a la espera de recibir
7 invocaciones.
Implementa el código del cliente: Implementa el código Java del cliente. A través del registro de objetos, se
8 obtiene el proxy al servidor, y se invocan las operaciones como si fuesen locales.
Los objetos CORBA se diferencian de los objetos de los
lenguajes habituales de programación en que: C C++ Java Cobol
•Pueden estar localizados en cualquier lugar de la red.
•Pueden ejecutarse en cualquier plataforma de hardware y de C C++ Java Cobol
IDL IDL IDL IDL
sistema operativo.
•Pueden estar escritos en cualquier lenguaje.
•Pueden tener la capacidad de detectar el entorno, procesar Client Stubs Server Skeletons
información y además tienen la capacidad de comunicación.

Corba ORB

Componente que permite que clientes y objetos puedan


• Object Services
comunicarse en un ambiente distribuido. Y que contempla cada
• Common Facilities
una de las interfaces que el ORB manipula. El bus de objetos es el
• Domain Interfaces
intermediario entre clientes y servidores que transmite las
• Application Interfaces
peticiones cliente-servidor y las respuestas servidor-cliente.
• Invocación de métodos.
El adaptador de objetos (OA) es el módulo que permite a las • Generación e interpretación de las referencias a objetos.
implementaciones de los objetos acceder a servicios ofrecidos • Activación y desactivación de objetos e implementaciones.
por el ORB, éste genera las referencias a los objetos.
• El repositorio de interfaces(IR) :
Es un servicio que ofrece objetos persistentes que
representan la información IDL de las interfaces
Es un lenguaje que permite definir una serie de interfaces para disponibles en CORBA.
la comunicación entre dos o más aplicaciones. • La interfaz de invocación dinámica(DII):
Es una interfaz que nos permite la construcción dinámica
de invocaciones para un determinado objeto.

Es el intermediario entre el cliente y el ORB. El Stub recoge del


cliente llamadas a métodos y las transmite al ORB. Se requiere
una clase de stub por cada clase remota.

Es el intermediario entre ORB y los objetos del servidor. Recibe


llamadas del ORB y ejecuta los métodos correspondientes en el
servidor sobre el objeto que corresponda.
El Servidor:
• Crea objetos remotos.
• Hace accesibles referencias a objetos remotos.
• Espera a que los clientes invoquen estos objetos remotos o
a sus métodos.

Cliente:
Obtiene una referencia a uno o más objetos remotos en
el servidor
• nvoca sus métodos
Cliente Servidor
Esqueleto
Stub

ORB ORB
IIOP
Cuando se hace una invocación se pasa por:
 El stub del cliente.
 El ORB.
 El adaptador de Objetos.
 Encontrar el objeto adecuado.
 Viaja por los skeletons del servidor.
 Realizar la invocación sobre el objeto.
 Realizar el mismo camino de vuelta.
Implementación e incompatibilidad: La especificación inicial de CORBA definía tan
1 solo el IDL, y no la interoperabilidad entre los lenguajes, esto se solucionó a partir de CORBA 2.

Transparencia en la localización: Los objetos que residen en el mismo espacio de


2 direcciones y que son accesibles con una simple llamada a una función son tratados como
objetos que residen en cualquier parte del sistema distribuido.

3 Deficiencias en el diseño y proceso

Problemas con las implementaciones: Ha habido pocas implementaciones que hayan


4 incluido todos los elementos críticos de la especificación, y las implementaciones existentes
estaban incompletas o eran inadecuadas.

Cortafuegos: CORBA utiliza conexiones TCP/IP crudas con el fin de transmitir los datos. Sin
5 embargo, si el cliente está detrás de un cortafuegos muy restrictivo que sólo permite conexiones
HTTP hacia el exterior por el puerto 80, la comunicación puede llegar a ser imposible. Esto se ha
mejorado.
1 Heterogeneidad

2 Movilidad

3 Eficiencia

4 Adaptación al cliente

5 Tiempo de desempeño

6 Robusto
1
Las redes son indispensables para la comunicación entre máquinas;
sin embargo, pueden plantear problemas de saturación,
embotellamiento, interrupción o pérdidas de mensajes.

2
El posible acceso a todo el sistema por parte de los usuarios plantea el
inconveniente de la necesidad de un sistema de seguridad adecuado y
estándar, aunque CORBA maneja la seguridad.

También podría gustarte