10.05.2015 Views

UNIVERSIDAD DE CASTILLA-LA MANCHA ... - Grupo ARCO

UNIVERSIDAD DE CASTILLA-LA MANCHA ... - Grupo ARCO

UNIVERSIDAD DE CASTILLA-LA MANCHA ... - Grupo ARCO

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

82<br />

CAPÍTULO 6. HYDRA<br />

6.2.2. Agente de Base de Datos<br />

Para interactuar con la base de datos, se incorporó al Manager un agente que<br />

se encarga de hacer que dichas operaciones sean transparentes. Es decir, el Manager<br />

no ejecuta sentencias SQL, si no que invoca operaciones para almacenar Despliegues,<br />

obtener Imágenes, etc. Si en un futuro cambiase el modelo de la base de datos, o se<br />

utilizara otra forma de almacenamiento de la información, tan sólo el agente se vería<br />

afectado. Sólo habría que programar un nuevo agente que fuera capaz de manejar el<br />

nuevo modelo de persistencia.<br />

6.2.3. Preparación de imágenes<br />

Una de las tareas más importantes que realiza el Manager es la preparación de<br />

las Imágenes para su distribución. La herramienta utilizada para el despliegue de las<br />

Imágenes es IcePatch2, que es un servicio del middleware Ice. IcePatch2 permite ahorrar<br />

ancho de banda de dos maneras: en primer lugar, no transmite los ficheros tal cual los<br />

encuentra, sino que los comprime antes con bzip. Por otra parte, una vez comprimido<br />

cada fichero, calcula el código MD5 [Riv92] correspondiente a cada uno, y almacena<br />

esta información en un fichero de texto, llamado IcePatch2.sum. Ambas operaciones<br />

las realiza el comando icepatch2calc.<br />

Una vez hecho esto, se utiliza icepatch2server para crear un servidor al que conectarse<br />

para descargar los ficheros. Cuando un cliente se conecta al servidor (mediante<br />

icepatch2client), descarga los ficheros comprimidos y el fichero .sum, que le servirá en<br />

primera instancia para detectar errores en la transmisión. Si todo ha ido bien, descomprimirá<br />

los ficheros y borrará los comprimidos.<br />

El fichero .sum tiene una segunda finalidad, y es que permite detectar cambios.<br />

Cuando alguien actualice la Imagen almacenada en el servidor, es de suponer que<br />

dicha actualización no afectará a todos los ficheros (aunque podría ser así, no es lo<br />

habitual). El uso del fichero .sum permite saber qué ficheros han cambiado o han sido<br />

añadidos o eliminados, y transmitir únicamente dichos cambios.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!