La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Common Object Request Broker Architecture (CORBA)

Presentaciones similares


Presentación del tema: "Common Object Request Broker Architecture (CORBA)"— Transcripción de la presentación:

1

2 Common Object Request Broker Architecture (CORBA)

3 I NTRODUCCIÓN Como se inicio CORBA y de donde viene. ¿Qué es CORBA? ¿Cuál es el propósito / objetivos de CORBA? Definición Middleware ¿Cómo responder a los objetivos?

4 En 1989 se forma el Object Management Group (OMG), con la finalidad de buscar soluciones a los problemas que surgen al desarrollar nuevos sistemas o de integrar aplicaciones centralizadas ya existentes en entornos distribuidos. En 1991, el OMG recoge su propuesta en un modelo inicial denominado Object Management Architecture (OMA), en el que destaca el corazón de dicha arquitectura: la especificación de CORBA (Common Object Request Broker Arquitecture). Actualmente dicho grupo acaba de concluir la especificación de CORBA 3.0. A partir de la especificación de CORBA, varios fabricantes han construido ya productos comerciales: ORBIX de IONA o el Visibroker de Borland. También, se han desarrollado numerosos productos de libre distribución: Oxbit, Mico, Tao, etc. Como se inicio CORBA y de donde viene.

5 Arquitectura de un Sistema CORBA

6 Permitir el desarrollo portátil de código orientado a objetos, interoperable que es de hardware, sistema operativo, red y lenguaje de programación independiente. El modelo de gestión de objetos distribuidos CORBA se compone de: El modelo de objetos en donde se describe qué es un objeto CORBA El modelo de referencia en donde se explica qué arquitectura se propone para permitir que los objetos CORBA puedan relacionarse.

7 Aplicaciones. Procesos clientes y servidores que representan la lógica del negocio como objetos que pueden residir en distintas máquinas. Middleware. Soporte que permite la comunicación entre aplicaciones. Servicios de Red. Transporta la información entre computadores. Servicios Locales. Ejemplo, bases de datos y administradores de transacciones. Sistema Operativo. Provee servicios básicos de Hw y scheduling.

8 Conjunto de servicios comunes no relacionado con la lógica de negocio que permite que aplicaciones servidoras y clientes interactúen con otras a través de una Red. En esencia el Middleware es el software que reside sobre la red, permitiendo software de aplicación orientados sólo a lógica de negocio. Definición Middleware

9 Importancia del Middleware.

10 Correo Electrónico. Provee servicios no relacionados con el negocio que residen sobre la red permitiendo interconectar usuarios. Productos de Groupware, como por ejemplo Lotus Notes. Web Browser, Web gateways. Sql Gateways. Paquetes de Electronic Data Interchange (EDI). Paquetes de Remote procedure Call (RPC). Servidores de Objetos distribuidos, como por ejemplo CORBA. Ejemplos sobre implementaciones de Middleware.

11 ¿Cómo responder a los objetivos? Existe una interfaz entre aplicaciones clientes y servidoras. Una lenguaje de definición de interfaz (IDL) ha sido definido específicamente para CORBA. Cualquier objeto puede ser un cliente, un servidor o ambos. Para efectos de descripción CORBA usa el modelo Cliente/Servidor. No conoce los detalles de las implementaciones fundamentales de los objetos. Un object adapter mapea modelos genéricos a implementaciones, siendo la principal manera en que las implementaciones de los objetos acceden los servicios provistos por el ORB (object Request Broker)

12 Interface Definition Language (IDL) Independencia de Idioma Define las interfaces de objetos Denota servicios que pueden ser atendidos y ejecutados para cambiar de valor y adquirir un valor. La especificación IDL de OMG provee una forma estándar de definir las Interfaces a los objetos de CORBA. La definición IDL es una especie de contrato entre el desarrollo de un objeto y cliente. IDL es independiente de lenguajes de programación y se mapea a los lenguajes mas típicos para desarrollar, actualmente se encuentra e esta generación de código a C, C++, SmallTalk, Java, Ada, Cobol.

13 module { interface [:inheritance] { ; [ ] ( ) [raises exception][context]; } Define un objeto CORBA Define un método Define un recipiente (espacio de nombres) Interface Definition Language (IDL)

14 Compilador IDL 1.Definir objetos mediante IDL. 2.Ejecute el archivo IDL través compilador IDL. 3.Compilador utiliza las asignaciones de idioma de programación para generar stubs y esqueletos específicos del idioma. 1.Definir objetos mediante IDL. 2.Ejecute el archivo IDL través compilador IDL. 3.Compilador utiliza las asignaciones de idioma de programación para generar stubs y esqueletos específicos del idioma.

15 Stubs y skeletons Stubs IDL estáticos o SII (Static Invocation Interface). Las operaciones locales que usan los clientes como sustitutas de las remotas. Generadas por el compilador de IDL. Envían y reciben mensajes (haciendo marshalling / unmarshalling). En lenguajes OO se genera una clase proxy por cada interfaz remoto (patrón de diseño Proxy).

16 Stubs y skeletons Skeletons IDL estáticos o SSI (Static Skeleton Interface). Las operaciones en el servidor que invocan las correspondientes implementaciones proporcionadas por el programador. Generadas por el compilador de IDL Reciben y envían mensajes (haciendo unmarshalling / marshalling). En lenguajes OO se genera una clase skeleton por cada interfaz remoto

17 Object Request Broker (ORB) Permite realizar invocaciones de métodos de objetos remotos en un entorno heterogéneo. El documento estándar se llama CORBA (Common Object Request Broker Architecture). En la práctica, el nombre CORBA realmente se aplica para referirse al conjunto de especificaciones. Las especificaciones de interfaces remotos se hacen en IDL (Interface Definition Language). Se han estandarizado los mappings de IDL a los lenguajes más comunes (C, C++, Java, COBOL, Smalltalk, Ada, etc.)

18 Servicios Interfaces de servicios útiles para aplicaciones de cualquier dominio. Nombres Trading Seguridad Transacciones Persistencia Eventos Notificaciones Etc…

19 Componentes de un ORB

20 Compilador IDL (IDL Compiler) Compila definición IDL en stubs y skeletons. Utiliza OMG asignaciones idioma especificados para traducir IDL en una aplicación específica del lenguaje.

21 Depósito de Implementación (Implementation Repository) Contiene información que permite al ORB para localizar y activar implementaciones de objetos. Proporciona información sobre las clases admite el servidor, los objetos que se crean instancias y sus documentos de identidad

22 ORB Core Proporciona mecanismo para comunicar de forma transparente las solicitudes de cliente para apuntar implementaciones de objetos Hace solicitudes de los clientes, parecen ser llamadas a procedimientos locales. GIOP - General de Protocolo Inter - ORB. IIOP - Internet Protocolo Inter - ORB. ORB Core GIOP/IOOP

23 Proporciona funciones auxiliares. Conversión de referencias de objetos a cadenas. Creación de listas de argumentos para las solicitudes realizadas a través de DII.

24 IDL Stub Interfaz de Invocación estática (SII). Los datos de aplicación Alguaciles en una representación común a nivel de paquetes. Orden de bytes de red (little - endian o big - endian). Tamaño de los tipos de datos Client

25 Emitir peticiones dinámicamente a los objetos sin necesidad de stubs IDL se vinculen en: Los clientes descubren las interfaces en tiempo de ejecución y aprenden cómo llamar a Pasos: 1.Obtener nombre de la interfaz 2.Obtener la descripción del método(desde el repositorio de interfaz) 3.Crear lista de argumentos 4.Crear solicitud Invoque petición

26 Interfaz de Skeleton Dinámico Análogo del lado del servidor para DII. Permite un ORB para entregar las solicitudes a una implementación de objeto que no tiene conocimiento en tiempo de compilación del tipo de objeto que está llevando a cabo

27 Aceptar las solicitudes de servicio en nombre de los objetos del servidor. De múltiples peticiones al servidor correcto. Despachos el upcall operación correspondiente en el servidor. Registra las clases que apoya y sus instancias en tiempo de ejecución con el repositorio de la aplicación. Adaptador Portable Objeto (POA). Políticas comportamiento del objeto de control (es decir, LifespanPolicy) Instancia del patrón de diseño del adaptador

28 Referencia de Objetos Interoperable Object Reference (IOR) Identifica de forma exclusiva cada objeto Contenidos Nombre Tipo (ID repositorio) Protocolo y Detalles Servicios Clave de objeto (nombre del adaptador objeto, nombre de objeto)

29 Interface Depositor IDL Ccompilador Implementación Depositor Client ORB Core GIOP/IOOP DII Adaptador de Objetos ORB Interface DSI Objetos (servidor) Escenario OBJ REF OBJ REF

30 Ventajas Con respecto a otras tecnologías similares Software COTS (Commercial Off The Shelf) Estandarizado, múltiples implementaciones (no se depende de un fabricante). Las especificaciones se adoptan por consenso. Buena infraestructura para construir aplicaciones distribuidas. Permite integrar aplicaciones heterogéneas

31 Desventajas No es la tecnología más sencilla de utilizar... Las especificaciones tardan en desarrollarse, y en consecuencia las implementaciones tardan en salir al mercado

32 Seguridad Los Servicios de CORBA proveen servicios a nivel de aplicaciones fundamentales para las aplicaciones orientada a objetos y componentes en entornos Distribuidos. La OMG a definido alrededor de 15 servicios de objetos. Los cuales son: Nombres Trader Notificación Eventos Transacciones Seguridad Ciclo de vida propiedades Persistencia Consulta Relaciones Concurrencia Externaliza ion Licenciamiento Tiempo Colección

33 De estos la seguridad controla la identificación de los elementos del sistema, permite verificar que un cliente esta autorizado a acceder los servicios de una implementación remota. Adicionalmente permite la comunicación segura de comunicación inseguras, ofreciendo confidencialidad e integridad de la información transmitida. Seguridad

34 Conclusión Objeto, arquitectura de componentes distribuidos ejemplos del mundo real de los patrones de diseño - TAO - freeware ORB Adaptador de fábrica, Reactor, Estrategia Transportes enchufable

35 Bibliografía Communications of the ACM, October 1998 Jeri Edwards, Dan Harkey, and Robert Orfali. Instant CORBA. New York: Wiley Computer Publishing, 1997.


Descargar ppt "Common Object Request Broker Architecture (CORBA)"

Presentaciones similares


Anuncios Google