Usted está aquí: Inicio Ingeniería Informática Desarrollo de Aplicaciones Distribuidas Prácticas Implementación de un objeto CORBA contador

Implementación de un objeto CORBA contador

Acciones de Documento
  • Vista de contenidos
  • Marcadores (bookmarks)
  • Exportación de LTI
Autores: Alejandro Calderon Mateos, David Expósito Singh, Javier García Blas, Laura Prada

Objetivo

Se trata de implementar un contador distribuido. La aplicación cliente/servidor estará formada por un servidor que contiene en un objeto CORBA el valor actual del contador y varios clientes que se encargarán de incrementar el valor del contador cada cierto tiempo.

El servidor notificará a los clientes de cuando en cuando el valor del contador.

Los clientes obtendrán del servidor una referencia del objeto CORBA contador y a continuación lo usarán para incrementar el valor del mismo cada cierto tiempo.

Los procesos clientes solicitarán al usuario un número entero, el cual es necesario verificar que se encuentra correctamente escrito, y dicho valor será el intervalo de tiempo (en segundos) entre el que el cliente incrementará el valor del contador, una vez se haya obtenido éste a través del objeto CORBA que proporciona el servidor.

El proceso servidor solicitará al usuario un número entero, el cual es necesario verificar que se encuentra correctamente escrito, y dicho valor será el intervalo de tiempo (en segundos) entre el que el servidor notificará a los clientes (a través de callback) del valor del contador, una vez se haya obtenido un objeto CORBA que proporciona el cliente.

Con motivo de jugar con la interoperabilidad que es inherente a la especificación CORBA a partir de la versión 2, se habrán de implementar 2 objetos CORBA y sus correspondientes procesos clientes tanto en Java como en C++. El servidor únicamente tendrá que implementarse en Java.

Estructura

El sistema distribuido consiste de los siguientes elementos:

  • Un objeto contador CORBA implementado por un objeto Java.
  • Un proceso servidor en Java que se encargue de crear el objeto contador CORBA y hacerlo accesible a los clientes almacenando su referencia en el servicio de nombres o en un fichero de texto (dependiendo del tipo de cliente).
  • Un proceso cliente implementado en Java que incremente el valor del objeto contador CORBA, consiguiendo su referencia a través del servicio de nombres.
  • Un proceso cliente implementado en C++ que incremente el valor del objeto contador CORBA, consiguiendo su referencia (IOR) a través del fichero escrito por el servidor.

Los procesos clientes y servidores deberán ejecutar en la misma o en distintas máquinas. El código deberá introducirse dentro de secciones try-catch por las posibles excepciones que pueden producirse como consecuencia del fallo de alguna de las operaciones sobre los objetos ORB.

Estructura del sistema de ficheros

  1. Crear un directorio llamado DAD_PRAC2 con tres subdirectorios llamados ServidorJavaClienteJava y ClienteCplusplus. Dentro de cada uno de ellos debe de definirse cada una de las clases y objetos anteriormente enumerados.
  2. En el directorio DAD_PRAC2 debe estar el fichero memoria.pdf con la memoria y documentación asociada a la parte de la práctica.
Reutilizar Curso
Descargar este curso