Sistemas De Informacion
Tecnologías de objetos distribuidos:
OMG-CORBA
Agradecimientos: Jesus Villamor Lugo, Simon Pickin de IT/UCIIIM, Juan José Gil Ríos de Terra.
mcfp@it.uc3m.es 1
Índice
¿Qué es?. Historia ¿Para qué sirve?. Objetivos ¿Cómo funciona? ¿Cómo se usa?. Ejemplos Arquitectura OMA Arquitectura Corba Corba y sus competidores
mcfp@it.uc3m.es 2
CORBA
Concepto ¿Qué es?CORBA (Common Object Request Broker Architecture). Es una herramienta que facilita el desarrollo de aplicaciones distribuidas en entornos heterogéneos (HW y SW)
Distintos sistemas operativos (Unix, Windows, MacOS, OS/2) Distintos protocolos de comunicación (TCP/IP, IPX, …) Distintos lenguajes de programación (Java, C, C++, …)
Define la infraestructura para la arquitectura OMA (ObjectManagement Architecture) especificando los entándares necesarios para la invocación de métodos sobre objetos en entornos heterogéneos
mcfp@it.uc3m.es
3
CORBA
¿Para qué sirve?
Permitir invocación de métodos de un objeto por objetos que residen en diferentes máquinas en entornos heterogéneos
Los objetos pueden estar desarrollados en diferentes lenguajes. Los equipos pueden tener diferente:Hardware Sistema operativo
Los equipos pueden estar conectados entre sí usando distintos protocolos de comunicación
Facilitar el desarrollo de aplicaciones distribuidas
mcfp@it.uc3m.es 4
CORBA
Historia. Especificaciones
OMG (Object Management Group)
consorcio creado en 1989, primer “producto”: CORBA inicialmente 8 empresas (Sun, HP, 3Com,...)
Hoy: más de 800 socios
Proveedores de SWy equipos, operadores de telecomunicaciones, empresas, universidades,...
http://www.omg.org/
OMA (Object Management Archictecture)
Inicial: 1990
CORBA (Common Object Request Broker Arquitecture)
CORBA 1. 1991 CORBA 2. 1995 CORBA 3. 2002
mcfp@it.uc3m.es 5
CORBA
Objetivos
Especificar un middleware para construir aplicaciones
cliente-servidor multi-nivel distribuidos ycentralizados flexibles / extensibles
Poder con la heterogeneidad
hardware distinto redes distintas sistemas operativos distintos lenguajes de programación distintos
⇒ interoperabilidad
mcfp@it.uc3m.es 6
CORBA
Otras propiedades deseadas
Transparencia de distribución
ni cliente ni servidor necesitan saber si la aplicación está distribuido o centralizado
Transparencia de localización (casodistribuido)
el cliente no necesita saber donde ejecuta el servicio el servicio no necesita saber donde ejecuta el cliente
Integración de software existente
amortizar inversión previa
sistemas heredados (legacy systems)
Activación de objetos
objetos remotos no tienen que estar en memoria permanentemente se hace de manera invisible para el cliente
mcfp@it.uc3m.es 7
CORBA
Otraspropiedades deseadas
Comunicación flexible
múltiples modos de comunicación
síncrona: tipo invocación de métodos / RPC asíncrona: sin respuesta
múltiples modelos de comunicación
invocación estática invocación dinámica
mcfp@it.uc3m.es
8
CORBA
Objetivos comerciales
CORBA 1 (1991)
llegar al mercado antes de Microsoft DCOM/COM+ competir con DCE, RPC: un éxito
CORBA 2 (1995)interoperabilidad entre implementaciones de distintos vendedores competir con Java RMI, COM+: un éxito
CORBA 3 (2002)
permitir desarrollo basado en componentes (CBD) competir con EJB, .NET
¿llegó demasiado tarde?
competir con los Web Services
difícil: Web Services actualmente en auge
hasta ahora no ha tenido éxito: ¿CORBA se muere?
mcfp@it.uc3m.es
9
CORBA
Medios para alcanzar losobjetivos
Orientado objetos
encapsulación herencia late binding & polimorfismo
Comunicación por invocación de métodos remotos
más fácil de programar que IPC, sockets, RPC, etc. stub:
representante local del objeto remoto encargado de la comunicación con el objeto remoto
skeleton:
encargado de la comunicación con el cliente
cliente-servidor de grano fino
interacciones son de tipo...
Regístrate para leer el documento completo.