¿Qué es CORBA? CORBA (Common Object Request Broker Architecture), es una arquitectura estándar  para sistemas de objetos distribuidos. Permite una distribución, colección heterogenea de objetos para interoperar. JLEV-2000 CORBA
¿Qué es CORBA?  El OMG  Arquitectura CORBA El ORB  CORBA como un estándar para objetos distribuidos Servicios de CORBA Productos de CORBA JLEV-2000 CORBA
El OMG El Object Management Group (OMG) es responsable de la definición de CORBA.  El OMG comprende sobre 700 compañías y organizaciones, incluyendo casi todos los vendedores y desarrolladores de tecnología de objetos ditsribuidos, incluyendo platformas, base de datos, y vendedores de aplicaciones así como una herramienta de software y desarrolladores empresariales.   JLEV-2000 CORBA
Arquitectura de CORBA CORBA define una arquitectura para objetos distribuidos.  El paradigma básico de CORBA es de una solicitud para servicios de objetos distribuidos. Todo lo demás definido por el OMG es en términos de este paradigma básico. Los servicios que un objeto provee son dados por su interface. Las interfaces son definidas en el Lenguaje de Definición de Interface (IDL) del OMG. Los objetos distribuidos son identificados por referencias a objetos, las cuales son definidas por las interfaces IDL. JLEV-2000 CORBA
Arquitectura de CORBA Un cliente tiene una referencia a un objeto a un objeto distribuido. La referencia al objeto es dada por una interface.  En la figura la referencia al objeto está dada por la interface  Rabbit .  El ORB (Object Request Broker), envía la solicitud al objeto y regresa cualquiera de los resultados al cliente.  En la figura, un salto en la solicitud regresa una referencia a un objeto definifa por la interface  AnotherObject .  JLEV-2000 CORBA
El ORB El ORB es el servicio distribuido que implementa la solicitud al objeto remoto.  Localiza el objeto remoto en la red, comunica la solicitud del objeto, espera los resultados y cuando están disponibles los envía de regreso al cliente. El ORB implementa transparencia el la localización.  Exactamente el mismo mecanismo de solicitudes es usado por el cliente y el objeto de CORBA sin tener en cuenta de donde el objeto está encontrado. Puede estar en el mismo proceso con el cliente, en el piso de abajo o del otro lado del planeta. El cliente no puede ver la diferencia.   JLEV-2000 CORBA
El ORB El ORB implementa independencia del lenguaje de programación para la solicitud.  El cliente que esté haciendo la solicitud puede estar escrito en un lenguaje de programación diferente de la implementación de la implementación del objeto de CORBA.  El ORB hace la traducción necesaria entre los lenguajes de programación.  Las limitaciones del lenguaje son definidas por todos los lenguajes de programación populares. JLEV-2000 CORBA
CORBA como un estándar para objetos distribuidos Una de las metas de la especificación CORBA es que la implementación de clientes y objetos sea portable.  La especificación de CORBA define una API (application programmer's interface) para los clientes de un objeto distribuido así como un API para la implementación de un objeto CORBA. Esto significa que el código escrito para un vendedor del producto CORBA podría, con un mínimo de esfuerzo, ser reescrito para funcionar con un producto de otro vendedor. Tal como, la realidad de los productos CORBA en el mercado actual es que los clientes CORBA son portables pero las implementaciones de objetos necesitan algo de trabajo para portarlas de un producto CORBA a otro..   JLEV-2000 CORBA
CORBA como un estándar para objetos distribuidos CORBA 2.0 añade interoperabilidad como una meta en la especificación. En particular, CORBA 2.0 define un protocolo de red, llamado IIOP (Internet Inter-ORB Protocol), que permite a los clientes usar un producto CORBA de cualquier vendedor para comunicarse con objetos usando un producto CORBA de cualquier otro vendedor.  IIOP funciona a través de Internet, o más precisamente, a través de cualquier implementación. JLEV-2000 CORBA
CORBA como un estándar para objetos distribuidos Interoperabilidad es más importante en un sistema distribuido que la portabilidad. IIOP es usado en otros sistemas que no intentan proveer la API de CORBA.  En particular, IIOP es usado como el protocolo de transporte para una versión de JavaTM RMI (llamada "RMI sobre IIOP").  Varios servidores de aplicación disponibles en el mercado usan IIOP pero no exponen completamente el API de CORBA. Ya que todos usan IIOP, los programas escritos a ese API diferente pueden interoperar entre ellos y con programas escritos para el API de CORBA. JLEV-2000 CORBA
Servicios de CORBA Otra parte importante del estándar CORBA es la definición de un conjunto de servicios distribuidos  que soportan la integración e interoperación de objetos distribuidos.  Como está representado en la gráfica de abajo, los servicios, conocidos como servicios de CORBA (COS), están definidos en la parte de arriba del ORB. Esto es, están definidos como objetos estándar de CORBA con interfaces IDL, algunas veces referidas como a ellas como ”Servicios de Objectos."  JLEV-2000 CORBA
Servicios de CORBA JLEV-2000 CORBA
Productos de CORBA CORBA es una especificación; es una guia para implementar productos.  Varios vendedores proveen productos CORBA para varios lenguajes de programación. JLEV-2000 CORBA
Productos de CORBA Los productos CORBA que soportan el lenguaje de programación Java incluyen:  JLEV-2000 CORBA

Corbaesp

  • 1.
    ¿Qué es CORBA?CORBA (Common Object Request Broker Architecture), es una arquitectura estándar para sistemas de objetos distribuidos. Permite una distribución, colección heterogenea de objetos para interoperar. JLEV-2000 CORBA
  • 2.
    ¿Qué es CORBA? El OMG Arquitectura CORBA El ORB CORBA como un estándar para objetos distribuidos Servicios de CORBA Productos de CORBA JLEV-2000 CORBA
  • 3.
    El OMG ElObject Management Group (OMG) es responsable de la definición de CORBA. El OMG comprende sobre 700 compañías y organizaciones, incluyendo casi todos los vendedores y desarrolladores de tecnología de objetos ditsribuidos, incluyendo platformas, base de datos, y vendedores de aplicaciones así como una herramienta de software y desarrolladores empresariales. JLEV-2000 CORBA
  • 4.
    Arquitectura de CORBACORBA define una arquitectura para objetos distribuidos. El paradigma básico de CORBA es de una solicitud para servicios de objetos distribuidos. Todo lo demás definido por el OMG es en términos de este paradigma básico. Los servicios que un objeto provee son dados por su interface. Las interfaces son definidas en el Lenguaje de Definición de Interface (IDL) del OMG. Los objetos distribuidos son identificados por referencias a objetos, las cuales son definidas por las interfaces IDL. JLEV-2000 CORBA
  • 5.
    Arquitectura de CORBAUn cliente tiene una referencia a un objeto a un objeto distribuido. La referencia al objeto es dada por una interface. En la figura la referencia al objeto está dada por la interface Rabbit . El ORB (Object Request Broker), envía la solicitud al objeto y regresa cualquiera de los resultados al cliente. En la figura, un salto en la solicitud regresa una referencia a un objeto definifa por la interface AnotherObject . JLEV-2000 CORBA
  • 6.
    El ORB ElORB es el servicio distribuido que implementa la solicitud al objeto remoto. Localiza el objeto remoto en la red, comunica la solicitud del objeto, espera los resultados y cuando están disponibles los envía de regreso al cliente. El ORB implementa transparencia el la localización. Exactamente el mismo mecanismo de solicitudes es usado por el cliente y el objeto de CORBA sin tener en cuenta de donde el objeto está encontrado. Puede estar en el mismo proceso con el cliente, en el piso de abajo o del otro lado del planeta. El cliente no puede ver la diferencia. JLEV-2000 CORBA
  • 7.
    El ORB ElORB implementa independencia del lenguaje de programación para la solicitud. El cliente que esté haciendo la solicitud puede estar escrito en un lenguaje de programación diferente de la implementación de la implementación del objeto de CORBA. El ORB hace la traducción necesaria entre los lenguajes de programación. Las limitaciones del lenguaje son definidas por todos los lenguajes de programación populares. JLEV-2000 CORBA
  • 8.
    CORBA como unestándar para objetos distribuidos Una de las metas de la especificación CORBA es que la implementación de clientes y objetos sea portable. La especificación de CORBA define una API (application programmer's interface) para los clientes de un objeto distribuido así como un API para la implementación de un objeto CORBA. Esto significa que el código escrito para un vendedor del producto CORBA podría, con un mínimo de esfuerzo, ser reescrito para funcionar con un producto de otro vendedor. Tal como, la realidad de los productos CORBA en el mercado actual es que los clientes CORBA son portables pero las implementaciones de objetos necesitan algo de trabajo para portarlas de un producto CORBA a otro.. JLEV-2000 CORBA
  • 9.
    CORBA como unestándar para objetos distribuidos CORBA 2.0 añade interoperabilidad como una meta en la especificación. En particular, CORBA 2.0 define un protocolo de red, llamado IIOP (Internet Inter-ORB Protocol), que permite a los clientes usar un producto CORBA de cualquier vendedor para comunicarse con objetos usando un producto CORBA de cualquier otro vendedor. IIOP funciona a través de Internet, o más precisamente, a través de cualquier implementación. JLEV-2000 CORBA
  • 10.
    CORBA como unestándar para objetos distribuidos Interoperabilidad es más importante en un sistema distribuido que la portabilidad. IIOP es usado en otros sistemas que no intentan proveer la API de CORBA. En particular, IIOP es usado como el protocolo de transporte para una versión de JavaTM RMI (llamada "RMI sobre IIOP"). Varios servidores de aplicación disponibles en el mercado usan IIOP pero no exponen completamente el API de CORBA. Ya que todos usan IIOP, los programas escritos a ese API diferente pueden interoperar entre ellos y con programas escritos para el API de CORBA. JLEV-2000 CORBA
  • 11.
    Servicios de CORBAOtra parte importante del estándar CORBA es la definición de un conjunto de servicios distribuidos que soportan la integración e interoperación de objetos distribuidos. Como está representado en la gráfica de abajo, los servicios, conocidos como servicios de CORBA (COS), están definidos en la parte de arriba del ORB. Esto es, están definidos como objetos estándar de CORBA con interfaces IDL, algunas veces referidas como a ellas como ”Servicios de Objectos." JLEV-2000 CORBA
  • 12.
    Servicios de CORBAJLEV-2000 CORBA
  • 13.
    Productos de CORBACORBA es una especificación; es una guia para implementar productos. Varios vendedores proveen productos CORBA para varios lenguajes de programación. JLEV-2000 CORBA
  • 14.
    Productos de CORBALos productos CORBA que soportan el lenguaje de programación Java incluyen: JLEV-2000 CORBA