Client cache e cache locale (Memorizzazione nella cache di AppFabric)
Quando si utilizzano le funzionalità di memorizzazione nella cache di Windows Server AppFabric, l'applicazione in uso utilizzerà l'oggetto DataCache per memorizzare dati nella cache. Questo oggetto viene definito come client cache. Per creare un client cache che utilizza la cache predefinita, utilizzare il metodo GetDefaultCache. Per creare un client cache che utilizza una cache denominata, utilizzare il metodoGetCache.
Nota
Per garantire prestazioni ottimali, si consiglia di ridurre al minimo il numero di oggetti DataCacheFactory creati dalla propria applicazione abilitata alla cache. Archiviare l'oggetto DataCacheFactory in una variabile disponibile per tutte le parti dell'applicazione che utilizzano client cache.
Considerazioni sulla sicurezza
È consigliabile proteggere qualsiasi file di configurazione dell'applicazione basato su XML utilizzato per specificare il client cache. I nomi computer degli host della cache sono specificati in questo file. Tuttavia, per l'accesso effettivo di un altro client al cluster di cache, richiederebbero le autorizzazioni per accedere al cluster di cache.
Cache locale
Il server archivia gli oggetti in forma serializzata nella cache. Quando un client cache richiede un oggetto dalla cache, il server lo invia al client attraverso la rete. Il client cache deserializza quindi l'oggetto per l'uso da parte dell'applicazione client. Per accelerare il processo di recupero di un oggetto, abilitare la cache locale. Per ulteriori informazioni sull'abilitazione della cache locale, vedere Abilitare la cache locale di Windows Server AppFabric o Abilitare la cache locale di Windows Server AppFabric (XML).
Quando la cache locale è abilitata, il client cache archivia un riferimento all'oggetto a livello locale. In questo modo si mantiene l'oggetto attivo nella memoria dell'applicazione client. Quando l'applicazione richiede l'oggetto, il client cache controlla innanzitutto se l'oggetto risiede nella cache locale. In tal caso, il riferimento all'oggetto viene restituito immediatamente senza contattare il server. Se non esiste, l'oggetto viene recuperato dal server. Il client cache deserializza quindi l'oggetto e archivia il riferimento a questo oggetto recentemente recuperato nella cache locale. L'applicazione client utilizza questo stesso oggetto.
La durata di un oggetto nella cache locale dipende da diversi fattori, quali il numero massimo di oggetti nella cache locale e il criterio di invalidamento. Esistono due tipi di invalidamenti per la cache locale: invalidamento basato su timeout e invalidamento basato su notifica. Per ulteriori informazioni, vedere Scadenza e rimozione (Memorizzazione nella cache di Windows Server AppFabric).
Suggerimento
Una volta archiviati gli oggetti nella cache locale, l'applicazione in uso continua a utilizzarli fino a quando non vengono invalidati, indipendentemente dal fatto che vengano aggiornati da un altro client nel cluster di cache. Per tale ragione, è preferibile utilizzare la cache locale per i dati che variano raramente.
Coerenza degli oggetti
Gli oggetti memorizzati nella cache locale vengono archiviati nell'ambito dello stesso spazio di processo del processo client cache. Quando un client cache richiede un oggetto memorizzato nella cache locale, il client riceve un riferimento a tale oggetto anziché una copia. Questa è una considerazione importante per le applicazioni multithread che potrebbero modificare lo stesso oggetto memorizzato nella cache locale da più thread. Tali applicazioni possono utilizzare le tecniche standard di codifica di .NETFramework per la sincronizzazione delle modifiche apportate agli oggetti da più thread. È inoltre possibile creare oggetti DataCacheFactory separati per ciascun thread. Questa possibilità deve essere però ponderata con attenzione dal momento che il sovraccarico dovuto alla creazione di molti factory di cache può ridurre i vantaggi.
Vedere anche
Concetti
Diagramma dell'architettura fisica della memorizzazione nella cache di Windows Server AppFabric
Diagramma dell'architettura logica della memorizzazione nella cache di Windows Server AppFabric
Scadenza e rimozione (Memorizzazione nella cache di Windows Server AppFabric)
Abilitare la cache locale di Windows Server AppFabric
Abilitare la cache locale di Windows Server AppFabric (XML)
Sviluppo di un client cache (Memorizzazione nella cache di Windows Server AppFabric)
2011-12-05