Herramientas de distribución de datos en un sistema Publish/Subscribe

Magán García, Aitor (2012). Herramientas de distribución de datos en un sistema Publish/Subscribe. Proyecto Fin de Carrera / Trabajo Fin de Grado, Facultad de Informática (UPM), Madrid, España.

Description

Title: Herramientas de distribución de datos en un sistema Publish/Subscribe
Author/s:
  • Magán García, Aitor
Contributor/s:
  • Fernández Gallego, Rafael
Item Type: Final Project
Degree: Grado en Ingeniería Informática
Date: June 2012
Subjects:
Faculty: Facultad de Informática (UPM)
Department: Lenguajes y Sistemas Informáticos e Ingeniería del Software
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] PDF - Users in campus UPM only - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (2MB)

Abstract

El objetivo del presente trabajo es el desarrollo de una infraestructura de enrutamiento distribuida para un sistema publish/subscribe (en adelante pub/sub) que se incluirá en WireCloud, una plataforma para la composición de aplicaciones. Actualmente existen numerosas implementaciones de protocolos pub/sub en el mercado [3-6], y en este trabajo se hará un recorrido por aquellas con mayor relevancia, explicando sus características, ventajas y desventajas. De esta forma se podrán seleccionar aquellas cuyas prestaciones se adapten de la mejor forma posible a las necesidades de la plataforma. De entre todas las implementaciones existentes, algunas han sido simuladas para comprender mejor su funcionamiento. Esto permitió analizar las diferentes estrategias de enrutamiento de mensajes y qué estructuras de datos son las más óptimas para que el procesamiento de mensajes entrantes sea lo más rápido posible. Una vez que se determinó cuales son las estrategias y las estructuras de almacenamiento que mejor se adaptan a nuestro sistema, se ha procedido a la implementación real del sistema pub/sub en Java. Para cada uno de los módulos desarrollados se ha generado una serie de pruebas que permitirán comprobar el correcto funcionamiento de los componentes cuando se produzcan cambios o ampliaciones. Además, este trabajo también incluye el análisis e implementación de un nuevo protocolo de comunicación entre los diferentes componentes debido a que el existente era lento y pesado al consumir gran cantidad de recursos. El protocolo de comunicación analizado está basado en RMI (Remote Method Invocation), y aunque no mejoró la eficiencia con que los mensajes eran enviados si que permitió reducir en gran medida el consumo de recursos (CPU y memoria RAM). ------------------------------------------------------------ The goal of the current project is the development of a distributed pub/sub system to include it on WireCloud which is a platform to build compositional applications. Several implementations of pub/sub systems [3-6] have been developed until now and this project explains some of them, their characteristic, advantages and disadvantages. Thus, the implementations which better adapt to the project needs have been selected. Some of these implementations have been simulated to get a better knowledge of their behavior. The aim of these simulations was to select the best strategies to route messages and the optimal structures to reduce the computation time of a received message. After defining the better strategies and structures, the real pub/sub system have been finally developed in Java. For each developed module, a set of tests have been built to check its correct behavior in case of changes or extensions. Besides, the project also includes the analysis and the implementation of a new communication protocol among the different components because the existing one was slow and consumed a lot of computer resources. The new communication protocol is based in RMI (Remote Method Invocation) and has improved the consumption of resources. However, the efficiency of this new protocol was worse than the one of the existing protocol.

More information

Item ID: 22455
DC Identifier: http://oa.upm.es/22455/
OAI Identifier: oai:oa.upm.es:22455
Deposited by: Biblioteca Facultad de Informatica
Deposited on: 18 Feb 2014 13:40
Last Modified: 28 Oct 2016 11:47
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM