Esporta (0) Stampa
Espandi tutto
Questo argomento non è stato ancora valutato - Valuta questo argomento

Informazioni su In-Role Cache per Cache di Windows Azure

Aggiornamento: ottobre 2012

Cache nel ruolo per la cache di Windows Azure supporta l'hosting dei servizi di Cache nei ruoli di Windows Azure. In questo modello la cache è inclusa nel servizio cloud, all'interno del quale è selezionato un ruolo per l'hosting di Cache nel ruolo. Le istanze in esecuzione di tale ruolo vengono aggiunte alle risorse di memoria in modo da formare un cluster di cache privato, disponibile solo per i ruoli definiti all'interno della stessa distribuzione. Per Cache nel ruolo esistono due topologie di distribuzione principali: quella basata su risorse condivise e quella basata su ruolo dedicato. I ruoli con risorse condivise ospitano anche altri servizi e codice dell'applicazione che non utilizzano la memorizzazione nella cache. I ruoli dedicati sono ruoli di lavoro utilizzati solo per Cache. Negli argomenti seguenti vengono fornite informazioni dettagliate su tali topologie di Cache.

Per una procedura completa relativa a Cache nel ruolo basato su ruoli, vedere Modalità di utilizzo di Windows Azure Caching. Per ottenere esempi scaricabili, vedere Esempi di In-Role Cache (Cache di Windows Azure).

Vantaggi di Cache nel ruolo basato su ruoli

L'hosting di Cache nel ruolo in un ruolo di Windows Azure offre diversi vantaggi. Nella tabella seguente viene fornita una panoramica dettagliata di tali vantaggi.

 

Caratteristica Description

Nessuna quota o limitazione

La cache viene utilizzata solo dall'applicazione dell'utente. Non sono presenti quote né limitazioni predefinite. L'unico fattore di limitazione è costituito dalla capacità fisica (memoria e altre risorse fisiche).

Isolamento, flessibilità e controllo

La topologia basata su risorse condivise e quella basata su ruolo dedicato contribuiscono a massimizzare le risorse. È possibile controllare Cache nel ruolo esattamente come l'applicazione utilizzata.

Costi ridotti

Non esiste un servizio premium per la cache. Viene addebitato solo il costo dei ruoli Web o di lavoro in cui viene eseguito Cache nel ruolo. In uno scenario basato su risorse condivise il costo del ruolo è già stato addebitato.

Scalabilità

È possibile scalare Cache nel ruolo nello stesso modo utilizzato per l'applicazione, ovvero modificando la dimensione della macchina virtuale o il numero di istanze in esecuzione del ruolo. È inoltre possibile creare cache di grandi dimensioni (>100 GB).

Integrazione di Visual Studio

L'integrazione di Cache nel ruolo con Visual Studio consente di semplificare l'aggiunta di Cache all'applicazione. Viene inoltre garantita la completa fedeltà con l'emulatore di calcolo per il debug dell'applicazione prima della distribuzione.

Supporto per Memcache

È garantito il supporto dei protocolli binari e di testo di Memcache per semplificare la migrazione delle applicazioni basate su Memcache in Windows Azure.

Funzionalità

La possibilità di ospitare Cache nel ruolo in una distribuzione cloud consente di aumentare il numero delle funzionalità di Cache supportate. Tali funzionalità includono: cache denominate, aree, tag, disponibilità elevata, cache locale con notifiche e maggiore simmetria API con Microsoft AppFabric 1.1 per Windows Server.

Prestazioni

Windows Azure è già in grado di individuare le istanze dei ruoli per consentire a un servizio cloud in prossimità di migliorare le prestazioni. L'hosting di Cache nel ruolo in un ruolo del servizio cloud sfrutta tale caratteristica per fornire un basso valore di latenza e una velocità effettiva elevata.

Concetti relativi a Cache nel ruolo

In questa sezione viene fornita una panoramica di tre concetti principali relativi a Cache nel ruolo basato su ruoli.

  1. Cluster di cache

  2. Cache denominate

  3. Client della cache

Cluster di cache

I ruoli di Windows Azure possiedono una o più istanze. Ciascuna istanza rappresenta una macchina virtuale configurata per ospitare il ruolo specificato. Quando un ruolo in cui Cache nel ruolo è abilitato viene eseguito su più istanze, si forma un cluster di cache. Un cluster di cache costituisce un servizio di memorizzazione nella cache distribuito che utilizza la memoria combinata di tutti i computer presenti nel cluster. Le applicazioni possono aggiungere e recuperare elementi dal cluster di cache senza dover conoscere il computer in cui tali elementi sono memorizzati. Se è abilitata la funzionalità di disponibilità elevata, una copia di backup dell'elemento viene automaticamente memorizzata in un'altra istanza della macchina virtuale.

noteNota
Per ciascun servizio cloud è supportato un unico cluster di cache. È possibile impostare più cluster di cache in un servizio cloud specificando account di archiviazione distinti per ogni ruolo. Questa configurazione non è tuttavia supportata.

Quando si abilita Cache nel ruolo su un ruolo di Windows Azure, è necessario specificare la quantità di memoria che è possibile utilizzare per la memorizzazione nella cache. In uno scenario basato su risorse condivise è necessario scegliere una percentuale della memoria disponibile nelle macchine virtuali che ospitano il ruolo. In uno scenario basato su ruolo dedicato tutta la memoria disponibile nelle macchine virtuali viene utilizzata per la memorizzazione nella cache. La memoria disponibile è tuttavia sempre inferiore rispetto alla memoria fisica totale della macchina virtuale a causa dei requisiti di memoria del sistema operativo.

La quantità totale di memoria del servizio di Cache è quindi costituita dalla memoria del ruolo riservata a Cache moltiplicata per il numero di ruoli. È possibile incrementare o ridurre in modo efficiente la memoria totale di Cache aumentando o riducendo il numero di istanze in esecuzione per tale ruolo.

WarningAvviso
Quando si riduce il numero di istanze in esecuzione del ruolo che ospita Cache nel ruolo, si consiglia di non rimuoverne più di tre alla volta. Una volta completata la modifica, è possibile rimuovere fino a tre istanze in esecuzione aggiuntive; ripetere l'operazione fino a raggiungere il numero di istanze in esecuzione richiesto. La rimozione contemporanea di più di tre istanze causa l'instabilità del cluster di cache.

Ciascun cluster di cache conserva le informazioni condivise sullo stato di runtime del cluster nella risorsa di archiviazione di Windows Azure. Durante le attività di sviluppo è possibile utilizzare l'emulatore di archiviazione di Windows Azure. Per i ruoli distribuiti è necessario specificare un account di archiviazione di Windows Azure valido. In Visual Studio è possibile specificare l'account di archiviazione appropriato nella scheda Caching delle proprietà del ruolo.

Cache denominate

In ciascun cluster di cache è presente almeno una cache denominata default. Utilizzando Cache nel ruolo basato su ruoli è inoltre possibile aggiungere altre cache denominate. Per ciascuna cache è possibile modificare diverse impostazioni. Nella schermata seguente viene visualizzata la sezione Impostazioni cache denominata della scheda Caching nelle impostazioni dei ruoli di Visual Studio.

Proprietà di memorizzazione nella cache per cache denominate

In Visual Studio fare clic sul pulsante Aggiungi cache denominata per aggiungere altre cache denominate. Nell'esempio precedente sono state aggiunte due cache denominate, NamedCache1 e NamedCache2. Per ciascuna cache sono definite impostazioni diverse. È possibile modificare le impostazioni selezionando e modificando i campi specifici all'interno della tabella.

Le cache denominate offrono flessibilità in fase di progettazione delle applicazioni, poiché per ciascuna di esse sono definite proprietà specifiche. Una cache può ad esempio abilitare Disponibilità elevata per sfruttare i vantaggi della disponibilità elevata. Altre cache potrebbero non richiedere questa impostazione, mentre la disponibilità elevata richiede il doppio della memoria per ciascun elemento memorizzato nella cache. Per un impiego ottimale delle risorse è consigliabile utilizzare la disponibilità elevata solo nelle cache che la richiedono. In altri scenari simili a quelli descritti potrebbero essere utilizzate più cache con proprietà diverse in grado di soddisfare i requisiti delle applicazioni.

Client della cache

Un client della cache costituisce un codice dell'applicazione in grado di memorizzare e recuperare gli elementi dal cluster di cache. Con Cache nel ruolo basato su ruoli, i client della cache devono far parte dello stesso ruolo di Cache oppure devono essere incorporati in altri ruoli all'interno della distribuzione. I client della cache possono essere configurati utilizzando i file di configurazione dell'applicazione o i file di configurazione Web. Per ulteriori informazioni, vedere Procedura: Preparare Visual Studio per l'uilizzo di In-Role Cache (Cache di Windows Azure). Nell'esempio seguente viene mostrato l'elemento dataCacheClient in un file di configurazione.

<dataCacheClients>
  <dataCacheClient name="default">
    <autoDiscover isEnabled="true" identifier="CachingRole1" />
    <!--<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />-->
  </dataCacheClient>
</dataCacheClients>

Nell'esempio precedente, per l'elemento autoDiscover è definito un attributo identifier impostato su CachingRole1. Questo identificatore specifica che per CachingRole1 è abilitato Cache nel ruolo e fornisce il percorso del server di cache. Il client di cache utilizza automaticamente CachingRole1 in tutte le operazioni di Cache.

Una volta configurato il client di cache, questo può accedere a qualsiasi cache in base al nome. Nell'esempio seguente viene eseguito l'accesso alla cache NamedCache1 e a questa viene aggiunto un elemento.

DataCache cache = new DataCache("NamedCache1", "default");
cache.Put("testkey", "testobject");

Il costruttore DataCache accetta due parametri: il nome della cache e il nome della sezione dataCacheClient. Per ulteriori informazioni sul nome della cache, vedere la sezione precedente su Cache denominate.

In questa sezione

Vedere anche

Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft. Tutti i diritti riservati.