Condividi tramite


Configurazione dei timeout del client cache (Memorizzazione nella cache di Windows Server AppFabric)

Le funzionalità di memorizzazione nella cache di Windows Server AppFabric consentono di configurare la lunghezza dei timeout del client di cache. È possibile controllare la lunghezza dell'attesa di una risposta dal cluster di cache. In questo argomento vengono illustrati due tipi di timeout: i timeout di apertura del canale e i timeout richiesta.

Alcuni applicazioni ottengono dei vantaggi nelle prestazioni impostando durate brevi per i timeout e quindi gestendo gli errori di timeout in modo appropriato. Altre applicazioni preferiscono durate di timeout relativamente lunghe, in modo da ridurre la frequenza di questi errori.

I timeout descritti in questo caso non si applicano alla connessione iniziale al cluster della cache. La connessione iniziale viene stabilita quando un nuovooggetto T:Microsoft.ApplicationServer.Caching.DataCacheFactory viene creato. Durante tale connessione, viene effettuato un tentativo di comunicare con il cluster tramite uno o più server specificatinella proprietà P:Microsoft.ApplicationServer.Caching.DataCacheFactoryConfiguration.Servers o nell'elementohosts del file di configurazione dell'applicazione. Qualsiasi problema di rete o cluster durante la comunicazione con tali server potrebbe causare un ritardo nella creazione della connessione iniziale. Per ridurre il ritardo, creare l'oggettoDataCacheFactory in un thread secondario. A seconda del modello di programmazione, l'applicazione è in grado di funzionare senza cache utilizzando i dati di origine finché non viene stabilita la connessione al cluster della cache.

ChannelOpenTimeout

Una volta superata la durata del timeout aperto di un canale,viene generata un'eccezione T:Microsoft.ApplicationServer.Caching.DataCacheException con il codiceErrorCode impostato suRetryLater. L'impostazione di configurazioneChannelOpenTimeout controlla il tempo di attesa da parte del client cache per stabilire una connessione di rete con il server. È possibile scegliere di impostare tale timeout su0 se si desidera che gli errori vengano restituiti immediatamente al client.

Per modificare questa impostazione a livello di programmazione, configurarela proprietà P:Microsoft.ApplicationServer.Caching.DataCacheFactoryConfiguration.ChannelOpenTimeout dell'oggettoDataCacheFactoryConfiguration .

Per controllare questa impostazione con un file di configurazione dell'applicazione, specificare la durata del timeout in millisecondi con l'attributochannelOpenTimeout per l'elementodataCacheClient .

RequestTimeout

Una volta superata la durata del timeout di una richiesta,viene generata un'eccezione T:Microsoft.ApplicationServer.Caching.DataCacheException con il codiceErrorCode impostato suTimeout. L'impostazione di configurazioneRequestTimeout controlla il tempo di attesa da parte del client di cache per ricevere una risposta dal server da una specifica chiamata API. Ad esempio, se è stato richiamato ilmetodo M:Microsoft.ApplicationServer.Caching.DataCache.Get(System.String) per recuperare un oggetto dalla cache, il timeout della richiesta determinerà il tempo di attesa di una risposta da parte del client cache prima che venga generata un'eccezione. Diversamente da quanto accade con ChannelOpenTimeoutnon si dovrebbe impostareRequstTimeout su 0 perché tale impostazione ha l'effetto di causare un errore di timeout in ogni chiamata al server.

Per modificare questa impostazione a livello di programmazione, configurarela proprietà P:Microsoft.ApplicationServer.Caching.DataCacheFactoryConfiguration.RequestTimeout dell'oggettoDataCacheFactoryConfiguration .

Per controllare questa impostazione con un file di configurazione dell'applicazione, specificare la durata del timeout in millisecondi con l'attributorequestTimeout dell'elementodataCacheClient .

Vedere anche

Concetti

Panoramica della gestione delle eccezioni (Memorizzazione nella cache di Windows Server AppFabric)
Eccezioni comuni (Memorizzazione nella cache di Windows Server AppFabric)

  2011-12-05