Vediamo brevemente uno degli argomenti più "funzionali" in una Web Application, l'uso del caching... perchè? Immaginate di dover rispondere sempre la stessa cosa più volte in un lasso di tempo abbastanza lungo, sarebbe molto comodo registrare la nostra risposta e ripeterla + volte senza dover collegare il cervello... in pratica il caching permette una permanenza in memoria delle risposte più frenquenti e vengono mantenute per un perido di tempo determinato, dopo tale periodo la nuova richiesta genererà una nuova risposta che persisterà in memoria per lo stesso tempo della precedente. Questo è il significato del caching, abbiamo:
- Web form caching
- fragmenta caching
- cached application data
Vediamo alcune cose sull'ultima, in pratica si tratta di una copia read-only d'informazioni contenute altrove. Che utilizziamo?
L'oggetto Cache, che "conserva" le informazioni in tre modi:
- assegnazione
- Insert, utilizza parametri
- Add, richiede parametri e ritorna una object reference ai dati cached
Vediamo alcuni parametri degli ultimi due:
- absoluteExpiration... DataTime object che ci dice quando i dati saranno rimossi
- dependencies.......... si utilizza per sincronizzare i dati nella cache con i dati conservati altrove
- key
- priority
- onRemoveCallback.... un delegate che interviene quando i dati vengono rimossi dalla cache per notificarlo all'applicazione
- value
- slidingExpiration....... un object TimeSpan indica quanto tempo i dati resteranno nella cache dopo l'ultimo accesso ad essi
Vediamo ora brevemente come si monitorizza il Cache Performance
Lo strumento che abbiamo a disposizione è MMC (Microsoft Management Console), si utilizzano il Performance Logs e Alerts, come procediamo?
- Start->..->Administrative Tools->Performance
- Da Performance Logs e Alerts facciamo click su Add, così visualizziamo la dialog box Add Counters
- Dalla lista degli oggetti Performance selezioniamo ASP.NET Application, il counters cache e dalla lista e poi selezioniamo l'applicazione da monitorare, facciamo click su Add, in questo modo abbiamo aggiunto il contatore cache al monitor
Ma quanti tipi di performance counters abbiamo? ASP.NET ne offre tre:
- Cache Total counters
- Cache API counters
- Output Cache couters
Ok, sono stata un pò risicata ma la cena mi aspetta : D ... a dopo.
powered by IMHO 1.3