Client della cache e cache locale (Memorizzazione nella cache di AppFabric 1.1)

Quando sono attive le funzionalità di memorizzazione nella cache di Microsoft AppFabric 1.1 per Windows Server, per memorizzare i dati nella cache un'applicazione utilizza l'oggetto DataCache. 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 AppFabric 1.1 o Abilitare la cache locale (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 AppFabric 1.1).

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 .NET Framework 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 molte factory di cache può ridurre i vantaggi.

Vedere anche

Concetti

Diagramma dell'architettura fisica della memorizzazione nella cache di AppFabric (Memorizzazione nella cache di AppFabric 1.1)
Diagramma dell'architettura logica della memorizzazione nella cache di AppFabric (Memorizzazione nella cache di AppFabric 1.1)
Scadenza e rimozione (Memorizzazione nella cache di AppFabric 1.1)
Abilitare la cache locale di AppFabric 1.1
Abilitare la cache locale (XML)
Sviluppo di un client della cache

  2012-03-05