CORBA COMMON OBJECT REQUEST BROKER ARCHITECTURE (Arquitectura común de broker de peticiones de objetos) • CORBA fue definido y está controlado por el OMG (Object Management Group) que define las APIs, el protocolo de comunicaciones y los mecanismos necesarios para permitir la interoperabilidad entre diferentes aplicaciones escritas en diferentes lenguajes y ejecutadas en diferentes plataformas, lo que es fundamental en computación distribuida. • CORBA, se utiliza como mecanismo de computación distribuida por proveedor de servicios del dominio de las telecomunicaciones. • Esta arquitectura facilita la programación en redes heterogéneas, permitiendo crear aplicaciones distribuidas que interactúan como si hubiesen sido implementadas en un mismo lenguaje de programación y sobre una misma computadora. Además de la integración de sistemas OSS, Sistemas Abiertos de Soporte (Open System Services) de diferentes proveedores para su interoperabilidad. Funciones principales de CORBA • Dentro de las principales funciones que tiene CORBA, se encuentran tareas habituales en sistemas distribuidos como lo son: ▫ Registro, localización y activación de objetos. ▫ Administración de errores. ▫ Multiplexación y desmultiplexación de invocaciones. • CORBA es la tecnología subyacente de algunos de los entornos de arquitectura orientada a servicios (SOA) más grandes del mundo. Elementos de CORBA IDL, Lenguaje de Definición de la Interfaz(Interface Definition Language) • Para especificar las interfases con los servicios que los objetos ofrecerán, éste proporciona un mecanismo neutral al lenguaje que permite definir interfases de objetos distribuidos. ORB, Intermediario de Petición de Objetos (Object Request Broker) • El núcleo de CORBA es el ORB, Intermediario de Petición de Objetos que administra la transferencia de mensajes desde un programa hacia un objeto localizado en un servidor en una red remota, escondiendo al programador la complejidad de las comunicaciones en las redes. DII, Interfaz de Invocación Dinámica (Dynamic Invocation Interface) • El DII, es una interfaz que permite la construcción dinámica de invocaciones para un determinado objeto. • Una invocación dinámica se compone de una referencia al objeto, una operación y una lista de parámetros, todos estos datos obtenidos del IR, Repositorio de Interfases (Interface Repository). IR, Repositorio de Interfases (Interface Repository) • El IR es un servicio que ofrece objetos persistentes que representan la información IDL de las interfases disponibles en CORBA de una forma accesible en tiempo de ejecución. OMA, Arquitectura de Administración de Objetos • Servicios Comunes de Objetos, CORBAservices. Independientes de dominio, útiles para muchos programas distribuidos (localización de objetos por nombre o por características, transacciones, notificación de sucesos. • Facilidades Comunes, CORBAfacilities. Para aplicaciones de usuarios finales (Distributed Document Component Facility). • Interfases de Dominio, CORBAdomains. Para dominios específicos (telecomunicaciones). • Aplicaciones. Para aplicaciones específicas (no normalizados). • http://java.sun.com/developer/onlineTraining/ corba/corba.html#co3