corba
Broker Architecture
CORBA
Computación de objetos distribuidos
y
CORBA
CORBA es una solución para la distribución de
objetos
OMG ha definido CORBA:
Un modelo de objetos
Cómo interaccionan los objetos
Una arquitectura del sistema que soporta la
interacción
de objetos
Un lenguaje para definir las interacciones entre
objetos
Serviciosbásicos para aplicaciones distribuidas
CORBA: un bus software
Todos los componentes en CORBA son
objetos
Cada objeto tiene una interfaz y una
identidad única
Cada objeto se puede implementar con
un lenguaje de programación distinto, y
ejecutarse sobre cualquier plataforma
HW y sistema operativo
CORBA define el bus software que
permite la interacción de esadiversidad
de objetos
IDL: Interface Definition
Lang.
IDL separa la interfaz de la implementación
Lenguaje de especificación de interfaces
públicas, con herencia múltiple y
fuertemente tipado
Independiente de cualquier lenguaje de
programación
OMG define correspondencias con muchos
lenguajes
No es un lenguaje de programación
Permite la interoperabilidad
Soporta elmecanismo de invocación dinámica
IDLs
Conceptos y terminología
CORBA. Common Object Request Broker Adapter
– Ofrece interfaces de programación independientes de
la plataforma y modelos para aplicaciones portables
basadas en objetos distribuidos.
ORB (Object Request Broker). Permite la comunicación
transparente entre clientes de objetos.
Objeto CORBA: entidad virtual quepuede ser
localizada por un ORB y que puede aceptar peticiones
de clientes.
– Es virtual, se concreta en un determinado lenguaje de
programación.
Conceptos y terminología
Objeto destino. Objeto CORBA al que se le hace una petición.
Cliente. Entidad que hace una petición sobre un objeto CORBA.
– Puede existir en un espacio de direcciones distinto
Servidor.Aplicación en la que residen uno o más objetos
CORBA.
Petición. Invocación de una operación de un objeto CORBA
realizada por un cliente.
Referencia a objeto. Manejador que se usa para identificar,
localizar y dar la dirección de un objeto CORBA.
Sirviente. Entidad de un lenguaje de programación que
implementa uno o más objetos CORBA. Los sirvientes encarnan
objetos CORBA
ArquitecturaCORBA
Componentes de la arquitectura
CORBA
Componentes de la arquitectura
CORBA
Flujo general de peticiones
El cliente realiza una petición usando stubs
estáticos (previamente compilados) o la Interfaz de
invocación dinámica (DII) y la dirige a su ORB.
El ORB cliente transmite las peticiones al ORB
enlazado con el servidor.
El ORB del servidor redirige lapetición al adaptador
de objetos que ha creado el objeto destino.
El adaptador de objetos dirige la petición al
servidor que implementa el objeto destino. Puede
utilizar esqueletos estáticos o la interfaz de
esqueleto dinámico.
El servidor devuelve su respuesta.
Invocación de peticiones
Para que un cliente envíe un mensaje a un objeto
necesita tener una referencia de dichoobjeto.
Las operaciones se realizan a través de la referencia al
objeto.
Cuando un cliente llama a una operación, el ORB:
Localiza al objeto destino.
Activa a la aplicación servidor, si no está activa.
Transmite los argumentos.
Activa un sirviente para el objeto si es necesario.
Espera hasta que se complete la operación.
Devuelve cualquier parámetro out e inout al cliente.
Devuelve una excepción cuando falla la llamada.
Estilos de peticiones
Petición síncrona. El cliente se bloquea
esperando la respuesta. Idénticas a las
llamadas a procedimientos remotos.
Petición de sentido único (oneway). El
cliente no espera respuesta.
También existen peticiones asíncronas.
Componentes de la arquitectura
CORBA
Componentes de la arquitectura...
Regístrate para leer el documento completo.