Over the past decades we observed an ever increasing deployment of systems managing and distributing contents (Content Management System - CMS) over the Internet. These systems significantly exploit their architectures to dynamically generate the information required by users. To achieve the goal, caching systems are used to solve computational issues on the server side: this approach requires consistency check about information provided by the cache system. Reliability and consistency of contents are guaranteed through invalidation procedures that impose refreshing of the delivered contents. This essential task may require a large volume of resources to be found in a short temporal interval: in such occasions, the system could not be able to provide users with real caching benefits, and the architecture must handle a heavy computational load and long queues. All of these factors, combined with several requests for contents, can lead to system stalemate. The thesis focuses on re-engineering the caching system of an already existing CMS, and on implementing an algorithm (namely, Cache-through) that optimizes queues. A new validation schema and the temporary use of expired resources until new versions are available, are the adopted key issues. Performed tests reveal that the Cache-through algorithm mitigates the negative effects produced by the invalidation procedures: the algorithm also features higher thresholds of critical load.

Negli ultimi decenni si è assistito alla crescente diffusione di sistemi per la gestione e la distribuzione di contenuti (Content Management System - CMS). Queste applicazioni sollecitano in maniera rilevante le architetture su cui sono installati per generare dinamicamente le informazioni richieste dagli utenti. In tale ambito è ormai pratica consolidata l’adozione di componenti di caching per di ridurre il carico computazionale sui server attraverso la staticizzazione delle risorse che impone però di verificare la coerenza delle informazioni erogate dalla cache. L’affidabilità dei contenuti è garantita tramite procedure d’invalidazione che impongono al CMS la rigenerazione dei contenuti. Questa fondamentale attività, nel caso in cui coinvolga un vasto insieme di elementi, può portare a brevi intervalli durante i quali il sistema non si è in grado di usufruire dei benefici offerti dal caching. In questi frangenti l’architettura deve gestire un elevato carico computazionale e code per la generazione dei contenuti molto lunghe: la combinazione di tali fattori unita a una forte concorrenza delle richieste può causare lo stallo dell’applicazione. La tesi, a tal proposito, si è focalizzata sulla reingegnerizzazione del sistema di caching utilizzato da un CMS esistente e la conseguente implementazione di un algoritmo di caching (detto Cache passante) che permette di ottimizzare le code di attesa attraverso un nuovo schema di validazione e il temporaneo utilizzo di risorse scadute fino all’acquisizione della nuova versione. I test condotti a valle delle attività svolte hanno evidenziato che, grazie alla Cache passante, l’impatto delle operazioni d’invalidazione sul sistema può essere quasi annullato ottenendo l’innalzamento della soglia di carico critico sostenibile dall’architettura.

Analisi, redesign e implementazione di un sistema di caching per applicazioni e portali web

GATTUSO, SANDRO;MAURI, MAURIZIO PRIMO
2009/2010

Abstract

Over the past decades we observed an ever increasing deployment of systems managing and distributing contents (Content Management System - CMS) over the Internet. These systems significantly exploit their architectures to dynamically generate the information required by users. To achieve the goal, caching systems are used to solve computational issues on the server side: this approach requires consistency check about information provided by the cache system. Reliability and consistency of contents are guaranteed through invalidation procedures that impose refreshing of the delivered contents. This essential task may require a large volume of resources to be found in a short temporal interval: in such occasions, the system could not be able to provide users with real caching benefits, and the architecture must handle a heavy computational load and long queues. All of these factors, combined with several requests for contents, can lead to system stalemate. The thesis focuses on re-engineering the caching system of an already existing CMS, and on implementing an algorithm (namely, Cache-through) that optimizes queues. A new validation schema and the temporary use of expired resources until new versions are available, are the adopted key issues. Performed tests reveal that the Cache-through algorithm mitigates the negative effects produced by the invalidation procedures: the algorithm also features higher thresholds of critical load.
ING V - Facolta' di Ingegneria dell'Informazione
31-mar-2011
2009/2010
Negli ultimi decenni si è assistito alla crescente diffusione di sistemi per la gestione e la distribuzione di contenuti (Content Management System - CMS). Queste applicazioni sollecitano in maniera rilevante le architetture su cui sono installati per generare dinamicamente le informazioni richieste dagli utenti. In tale ambito è ormai pratica consolidata l’adozione di componenti di caching per di ridurre il carico computazionale sui server attraverso la staticizzazione delle risorse che impone però di verificare la coerenza delle informazioni erogate dalla cache. L’affidabilità dei contenuti è garantita tramite procedure d’invalidazione che impongono al CMS la rigenerazione dei contenuti. Questa fondamentale attività, nel caso in cui coinvolga un vasto insieme di elementi, può portare a brevi intervalli durante i quali il sistema non si è in grado di usufruire dei benefici offerti dal caching. In questi frangenti l’architettura deve gestire un elevato carico computazionale e code per la generazione dei contenuti molto lunghe: la combinazione di tali fattori unita a una forte concorrenza delle richieste può causare lo stallo dell’applicazione. La tesi, a tal proposito, si è focalizzata sulla reingegnerizzazione del sistema di caching utilizzato da un CMS esistente e la conseguente implementazione di un algoritmo di caching (detto Cache passante) che permette di ottimizzare le code di attesa attraverso un nuovo schema di validazione e il temporaneo utilizzo di risorse scadute fino all’acquisizione della nuova versione. I test condotti a valle delle attività svolte hanno evidenziato che, grazie alla Cache passante, l’impatto delle operazioni d’invalidazione sul sistema può essere quasi annullato ottenendo l’innalzamento della soglia di carico critico sostenibile dall’architettura.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2011_03_Gattuso_Mauri.pdf

non accessibile

Descrizione: Testo della tesi
Dimensione 6.05 MB
Formato Adobe PDF
6.05 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/12661