VENDITE: 1-800-867-1389

Scadenza e rimozione per il Servizio cache gestito di Azure

Aggiornamento: luglio 2010

noteNota
Per indicazioni sulla scelta dell'offerta di Cache di Azure più adatta alla propria applicazione, vedere Qual è l'offerta di Cache di Azure più adatta alle mie esigenze?.

Gli oggetti memorizzati nella cache non rimangono nella memoria di Cache di Microsoft Azure per un tempo indeterminato. Oltre a essere esplicitamente rimossi mediante il metodo Remove, gli oggetti memorizzati nella cache possono anche scadere o essere eliminati dalla cache.

La scadenza della cache consente a quest'ultima di rimuovere automaticamente oggetti memorizzati. Quando si usa il metodo Put o Add, è possibile impostare un valore di timeout facoltativo per lo specifico oggetto della cache. Questo valore determinerà il tempo di permanenza nella cache. Se il valore di timeout dell'oggetto non viene fornito al momento della memorizzazione nella cache, l'oggetto usa la scadenza predefinita, Il valore predefinito per il Servizio cache gestito è dieci minuti.

I criteri di scadenza funzionano insieme all'impostazione Durata (min) per stabilire quando scadono gli elementi memorizzati nella cache. Questi comportamenti vengono configurati a livello di cache denominata nel portale di gestione, nella scheda Configura relativa alla cache.

Criteri di scadenza per il Servizio cache di Azure

Esistono tre tipi di criteri di scadenza: Assoluta, Estendibile e Nessuna.

 

Criterio di scadenza Descrizione

Nessuna

La scadenza è disabilitata. Gli elementi rimangono nella cache fino a quando non vengono rimossi. Quando si specifica Nessuna, Durata (min) deve essere impostato su 0.

Assoluta

L'intervallo specificato da Durata (min) inizia quando si aggiunge un elemento alla cache. Trascorso l'intervallo specificato da Durata (min), l'elemento scade.

Estendibile

L'intervallo specificato da Durata (min) viene reimpostato ogni volta che si accede a un elemento presente nella cache. L'elemento non scade fino a quando non è trascorso l'intervallo specificato da Durata (min) dopo l'ultimo accesso all'elemento. In questo modo, gli elementi usati di frequente rimangono nella cache più a lungo.

Il criterio di scadenza predefinito è Assoluta e l'impostazione predefinita per Durata (min) è dieci minuti. I criteri di scadenza vengono fissati per ogni elemento presente in una cache denominata. L'opzione Durata (min), tuttavia, può essere personalizzata per ogni elemento tramite gli overload Add e Put, mediante i quali viene accettato un parametro timeout.

noteNota
È importante notare il comportamento di una scadenza Estendibile quando viene usata in combinazione con la cache locale. Se un elemento viene letto dalla cache locale, questa operazione non implica l'accesso a tale oggetto nella cache ed è quindi possibile che l'elemento risulti scaduto nel server anche se viene letto in locale.

Se sono stati bloccati per motivi di concorrenza, gli oggetti memorizzati nella cache non vengono rimossi anche se è stata superata la scadenza. Nel caso in cui siano scaduti, verranno rimossi dalla cache subito dopo essere stati sbloccati.

Per impedire la rimozione istantanea quando si sbloccano oggetti che nel frattempo sono scaduti, il metodo Unlock supporta anche l'estensione della scadenza dell'oggetto memorizzato nella cache.

È possibile visualizzare l'integrità e le prestazioni della cache, incluse le metriche per la rimozione e la scadenza, nella scheda Monitoraggio relativa alla cache disponibile nel portale di gestione. Per altre informazioni, vedere Monitoring the cache service using the Monitor tab.

Esistono due tipi complementari di invalidamento per la cache locale: invalidamento basato sul timeout e invalidamento basato sulla notifica.

TipSuggerimento
Una volta archiviati gli oggetti nella cache locale, l'applicazione continua a usarli fino a quando non vengono invalidati, indipendentemente dal fatto che vengano aggiornati da un altro client. Per questo motivo, è opportuno abilitare la cache locale per i dati che non vengono modificati frequentemente.

Una volta che gli oggetti vengono scaricati nella cache locale, vi restano fino a quando non raggiungono il valore di timeout specifico indicato nelle impostazioni di configurazione del client della cache. Quando questo valore viene raggiunto, gli oggetti vengono invalidati. L'oggetto potrà essere aggiornato dalla cache quando verrà richiesto la volta successiva.

Se nel client della cache è abilitata la cache locale, è inoltre possibile usare le notifiche della cache per invalidare automaticamente gli oggetti memorizzati localmente nella cache. Se si riduce la durata di questi oggetti in base alle esigenze, è possibile evitare il rischio che l'applicazione usi dati obsoleti.

noteNota
Le notifiche sono disponibili nelle offerte di Cache Standard e Premium, ma non nell'offerta di Cache Basic. Per altre informazioni, vedere Offerte di cache per il Servizio cache gestito di Azure.

Quando si usano le notifiche, l'applicazione effettua un controllo con la cache a intervalli regolari per verificare se sono disponibili nuove notifiche. Tale intervallo, definito intervallo di polling, corrisponde a 300 secondi per impostazione predefinita. L'intervallo di polling viene specificato in unità di secondi nelle impostazioni di configurazione dell'applicazione. Si noti che anche con l'invalidamento basato sulla notifica, i timeout continuano a essere applicati agli elementi della cache locale. Ciò rende l'invalidamento basato sulla notifica complementare a quello basato sul timeout.

Per informazioni ed esempi, vedere Cache locale per il Servizio cache gestito di Azure.

Per gestire la disponibilità della capacità di memoria per una cache, è supportata la rimozione degli elementi utilizzati meno di recente (LRU). Quando il consumo di memoria si avvicina al valore consentito dall'offerta di Cache, gli oggetti vengono rimossi dalla memoria indipendentemente dal fatto che siano scaduti, finché non diminuisce la richiesta di memoria.

WarningAvviso
Se si disabilita la rimozione, può verificarsi un problema di limitazione delle richieste. In questo caso, la memoria supera la soglia, ma non è possibile risolvere il problema di memoria insufficiente. Se i client tentano di aggiungere elementi alla cache in questo scenario, viene generata un'eccezione finché il problema non viene risolto.

È possibile visualizzare l'integrità e le prestazioni della cache, incluse le metriche per la rimozione e la scadenza, nella scheda Monitoraggio relativa alla cache disponibile nel portale di gestione. Per altre informazioni, vedere Monitoring the cache service using the Monitor tab.

Per la rimozione sono disponibili due opzioni: Abilitato e Disabilitato. La rimozione è configurata a livello di cache denominata nel portale di gestione, nella scheda Configura relativa alla cache. L'impostazione predefinita è Abilitato.

Criteri di rimozione per il Servizio cache di Azure

I seguenti metodi consentono di ignorare le impostazioni predefinite presenti nella cache:

  • I metodi Add e Put forniscono gli overload che consentono di specificare un valore di timeout di scadenza solo per l'oggetto aggiunto alla cache.

  • I metodi PutAndUnlock e Unlock forniscono gli overload che consentono di estendere la scadenza di un oggetto dopo averlo sbloccato.

  • Il metodo ResetObjectTimeout consente di estendere in modo esplicito la durata di un oggetto, ignorando le impostazioni di scadenza della cache.

noteNota
Indipendentemente dalle impostazioni di scadenza o rimozione, in caso di errore o arresto imprevisto del servizio Cache i dati presenti nella cache non vengono conservati. Se nella cache non vengono trovati dati, il codice dell'applicazione dovrà ricaricare la cache da un'origine dati. Tale operazione viene spesso definita modello di programmazione cache-aside.

Vedere anche

Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.
Mostra:
© 2014 Microsoft