Sei sulla pagina 1di 18

CORBA:

Common Object Request Broker Arquitecture

CC52N - 99/2

Oct'99 (cc52n) 1
que es Corba?

Common Object Request Broker Arquitecture (CORBA)

CORBA es una especificacin. No es un software o aplicacin.

Auspiciado por Object Managament Group (OMG), para establecer una especificacin
de inter-operabilidad entre plataformas.

OMG es fundada en 1989, por American Airlines, Canon, Data General, HP, Philips
Telecomunicaciones, Sun , 3Com y Unisys

Hay un gran nmero de implementaciones de CORBA. Estas son conocidas como


Object Request Broker (ORB)

Oct'99 (cc52n) 2
que soluciona Corba?

Aplicaciones. Procesos clientes y servidores que


In fra e s tru c tu ra IT representan la lgica del negocio como objetos que
pueden residir en distintas mquinas.
A p lic a c io n e s
Middleware. Soporte que permite la comunicacin entre
aplicaciones.
M id d le w a r e

Servicios de Red. Transporta la informacin entre


computadores.
S e r v ic io s S e r v ic io s
de R ed L o c a le s
Servicios Locales. Ejemplo, bases de datos y
administradores de transacciones.

S is t e m a O p e r a tiv o
Sistema Operativo. Provee servicios bsicos de Hw y
scheduling.

Oct'99 (cc52n) 3
que soluciona Corba?

Definicin Middleware

......Conjunto de servicios comunes no relacionado con la


lgica de negocio que permite que aplicaciones servidoras y
clientes interactuen con otras a travs de una Red. En esencia
el Middleware es el software que reside sobre la red ,
permitiendo software de aplicacion orientados slo a logica
de negocio.

Oct'99 (cc52n) 4
que soluciona Corba?

Importancia del Middleware.

M id d le w a r e

Oct'99 (cc52n) 5
que soluciona Corba?

Ejemplos sobre implementaciones de Middleware.

Correo Electrnico. 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.

Oct'99 (cc52n) 6
como funciona?

Los conceptos claves de CORBA son:

Esencialmente especifica los servicios de middleware que sern usados por las
aplicaciones (objetos).

Existe una interfaz entre aplicaciones clientes y servidoras. Una lenguaje de definicin
de interfaz (IDL) ha sido definido especficamente para CORBA.

Cualquier objeto puede ser un cliente, un servidor o ambos. Para efectos de


descripcin CORBA usa el modelo Cliente/Servidor.

Soporta static binding y dinamic binding

No conoce los detalles de las implementaciones fundamentales de los objetos. Un


object adapter mapea modelos genricos a implementaciones, siendo la principal
manera en que las implementaciones de los objetos acceden los servicios provistos por
el ORB (object Request Broker)

Oct'99 (cc52n) 7
como funciona?

Diagrama conceptual de CORBA

C C++ Java Cobol

C C++ Java C obol


ID L ID L ID L ID L

C lie n t S tu b s S e r v e r S k e le t o n s

C o rb a O R B

Oct'99 (cc52n) 8
como funciona?

Diagrama conceptual de CORBA

C lie n t e I m p le m e n ta c i n O b je t o s

In v o c a c i n
S k e le to n
S k e le to n
e s t t ic o R e p o s it o r io d e
D in m ic o
I m p le m e n ta c i
R e p o s it o r io ones
de I n v o c a c i n S t u b C lie n t e iin te r f a z
O b je c t A d a p t e r
In te r fa c e s D in m ic a ID L O R B

C o rb a O R B

Oct'99 (cc52n) 9
como ha evolucionado?

CORBA es una especificacin. Como cualquier


especificacin hubo reas dejadas a la interpretacin de los
implementadores.

A travs de Internet Inter-ORB Protocol (IIOP), la OMG


espera que ORBs de diferentes vendedores puedan
comunicarse fcilmente entre si.

Recientemente las especificaciones Portable Object


Adapter (POA) permite a clientes escritos para acceder un
ORB en particular, pueda acceder fcilmente otros
productos de diferentes vendedores.

Se ha adaptado a los tiempos y a la competencia.

Oct'99 (cc52n) 10
como ha evolucionado?

J u n '9 9
C O R B A 3 .0
CORBA F e b '9 2 A s in c r o n o
C O R B A 1 .1 Java
E s p e c if ic a c i n F ir e w a lls
c o n o c id a POA
D e c '9 4
a n u n c ia O b j. p o r
C O R B A 2 .0 v a lo r
O M G (7 5 0 )
'9 2 ........
P r im e r o s D e c '9 3 A g o '9 6
'8 9 p ro d u c to s
O M G es C O R B A 1 .2 C O R B A 2 .0 S e p '9 8
CORBA IIO P
fu n d a d a a n u n c ia
c o m e r c ia le s C++ A g o '9 7 C O R B A 3 .0
S e g u r id a d C O R B A 2 .1
COM IIO P / S S L F e b '9 8
O c t '9 1 ....... C O R B A 2 .2
C O R B A 1 .1 DCOM

1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999

Oct'99 (cc52n) 11
es nico?

Competidores:

DCOM

RMI/RMP

HTTP/CGI

Servlets

Sockets

.............

Oct'99 (cc52n) 12
es nico?

CORBA/IIOP DCOM RM I/RM P HHTP/CGI Servlets


Abstraction level
Seemless J ava Integration
OS Platform support
All-J ava Implementation
Typed parameter support
Ease of conf iguration
Distributed method
invocations
State across invocations
Dynamic discovery and
metadata support
Dynamic invocations
performance (remote pings)
(3.5 msec) (3.8 msec) (3.3msec) (827.9 msec) (55.6 msec)
wire-level security
wire-level transactions
persistent object references
URL-based naming
multilingual object
Oct'99 (cc52n) invocations 13
language neutral wire
qu proyecciones tiene?

RMI y Corba, son dos estndares de objetos distribuidos soportados por OMG.

Microsoft COM/DCOM.

Las especificaciones corba java-to-IDL y object-by-value son un gran paso


hacia la unificacin en el campo de los objetos distribuidos entre Corba y RMI.
Significa que no se debe elegir entre Java RMI y Java IDL. EJB es un buen
ejemplo de esta nueva unificacin en accin.

Enterprise Java Bean ?

CORBA COM /COM +


Maturity A B
Availability A D
IDE support D A
ISV Enthusiasm C A
Champions(s) C B
Oct'99 (cc52n) Component library D B 14
Languajes(s) A A
qu proyecciones tiene?

J u n '9 9
C O R B A 3 .0
C O R BA F e b '9 2 A s in c r o n o
C O R B A 1 .1 Java
E s p e c i f i c a c i n F ir e w a l ls
c o n o c id a PO A
D e c '9 4
a n u n c ia O b j. p o r
C O R B A 2 .0 v a lo r
O M G (7 5 0 )
'9 2 ........
P r im e r o s D e c '9 3 A g o '9 6
'8 9 p ro d u c to s
O M G es C O R B A 1 .2 C O R B A 2 .0 S e p '9 8
CO R BA IIO P
fu n d a d a a n u n c ia
c o m e r c i a le s C ++ A g o '9 7 C O R B A 3 .0
S e g u r id a d C O R B A 2 .1
C O M IIO P / S S L F e b '9 8
O c t '9 1 ....... C O R B A 2 .2
C O R B A 1 .1 D C O M

1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999

E n e '9 6
J a v a 1 .0
F e b '9 7 M a y '9 9
E n t e r p r is e J a v a B e a n s J a v a 1 .1 E J B 1 .1
R M I M a r '9 8
E J B 1 .0

J u n '9 8
p r im e r o s
p ro d u c to s p a ra
E J B 1 .0

D e c '9 8
J a v a 1 .2

Oct'99 (cc52n) 15
ejemplos?

c a r g a / b in d
C re a r R e p o s ito r io
D e f in ic io n e s I D L In te r fa c e s

P r e c o m p ila r
S k e le t o n

C lie n t I D L S t u b E x a m p le S e r v a n t

usa

I m p le m e n to e l I m p le m e n t o e l
C lie n t e S e rv a n t

C o m p ila r C o m p ila r O b je c t
A d a p te r
in s t a n c ia

C la s e C lie n t e C la s e S e r v a n t R e p o s it o r io
I m p le m e n t a c io n e s

Oct'99 (cc52n) 16
ejemplos?

c o u n t .id l
C o rb a ID L

P r e c o m p ila d o r I D L - J A V A
id l2 ja v a

_ s t_ c o u n t C o u n tH e lp e r C o u n tH o ld e r _ c o u n tI m p lB a s e C ount _ e x a m p le _ c o u n t

J a v a - C lie n t e J a v a - S e rv e r

Oct'99 (cc52n) 17
ejemplos?

c o u n t . id l
C o rb a ID L

P r e c o m p ila d o r ID L - C + +
id l2 c p p

c o u n t_ c .h h c o u n t_ c .c c c o u n t_ s .h h c o u n t_ s .c c

C lie n t e C + + S e rv e r C + +

Oct'99 (cc52n) 18

Potrebbero piacerti anche