Questo articolo fornisce le risposte alle domande comuni su come sviluppare per Azure Managed Redis (anteprima).
Come è possibile iniziare a usare Azure Managed Redis (anteprima)?
Esistono diversi modi per iniziare a usare Azure Managed Redis (anteprima).
- È possibile eseguire una delle esercitazioni disponibili per .NET, ASP.NET, Java, Node.js e Python.
- È possibile esplorare i percorsi di apprendimento di Azure Redis
- È possibile consultare la documentazione del client per client di esempio in cui viene usato lo stesso linguaggio di sviluppo usato nel progetto. Esistono molti client Redis che possono essere usati con Redis gestito di Azure. Per un elenco di client Redis, vedere https://redis.io/clients.
Se non si dispone di un account Azure, è possibile:
- Aprire un account Azure gratuitamente: sono inclusi crediti da usare per provare i servizi di Azure a pagamento. Una volta esauriti i crediti, è possibile mantenere l'account e usare le funzionalità e i servizi di Azure gratuiti.
- Attivare i vantaggi della sottoscrizione Visual Studio. con l'abbonamento MSDN ogni mese si accumulano crediti che è possibile usare per i servizi di Azure a pagamento.
Qual è la funzione delle opzioni di configurazione StackExchange.Redis?
StackExchange.Redis include diverse opzioni. Questa sezione illustra alcune impostazioni comuni. Per informazioni più dettagliate sulle opzioni StackExchange.Redis, vedere la pagina relativa alla configurazione di StackExchange.Redis.
Opzioni configurazione | Descrizione | Elemento consigliato |
---|---|---|
AbortOnConnectFail | Se impostata su true, la connessione non viene ristabilita dopo un errore di rete. | Impostare su false, per permettere a StackExchange.Redis di riconnettersi automaticamente. |
ConnectRetry | Numero di nuovi tentativi di connessione durante la connessione iniziale. | Per indicazioni, vedere le note seguenti. |
ConnectTimeout | Timeout in millisecondi per le operazioni di connessione. | Per indicazioni, vedere le note seguenti. |
Nella maggior parte dei casi sono sufficienti i valori predefiniti del client. È possibile ottimizzare le opzioni in base al carico di lavoro specifico.
Nuovi tentativi
- Per ConnectRetry e ConnectTimeout è in genere consigliabile fallire e rispondere immediatamente agli errori e riprovare, in base al carico di lavoro specifico e al tempo mediamente necessario per l'invio di un comando Redis da parte del client e la ricezione di una risposta.
- Permettere la connessione automatica di StackExchange.Redis invece di controllare lo stato di connessione ed eseguire manualmente la riconnessione. Evitare di usare la proprietà ConnectionMultiplexer.IsConnected.
- In alcuni casi potrebbe verificarsi un problema che genera nuovi tentativi a catena, senza possibilità di ripristino. In questo caso provare a usare un algoritmo di ripetizione con backoff esponenziale, come illustrato nell'articolo sulle indicazioni generali per la ripetizione di tentativi pubblicato dal gruppo Microsoft Patterns & Practices.
Valori di timeout
- Esaminare il carico di lavoro e impostare i valori adeguati. Se si archiviano valori di grandi dimensioni, impostare il timeout su un valore più elevato.
- Impostare
AbortOnConnectFail
su false per permettere a StackExchange.Redis di riconnettersi. - Usare una sola istanza
ConnectionMultiplexer
di lunga durata anziché creare una nuova connessione per ogni richiesta. - Impostare la proprietà
ConnectionMultiplexer.ClientName
su un nome univoco dell'istanza dell'app per finalità di diagnostica. - Usare più istanze di
ConnectionMultiplexer
per carichi di lavoro personalizzati.- È possibile seguire questo modello se l'applicazione include carichi variabili. Ad esempio:
- È possibile avere un multiplexer per la gestione di chiavi di grandi dimensioni.
- È possibile avere un multiplexer per la gestione di chiavi di piccole dimensioni.
- È possibile impostare valori diversi per i timeout di connessione e la logica di ripetizione dei tentativi per ogni ConnectionMultiplexer usato.
- Impostare la proprietà
ClientName
in ogni multiplexer per semplificare la diagnostica. - Questa guida potrebbe comportare una latenza più semplificata per
ConnectionMultiplexer
.
Quali client Redis è possibile usare?
Uno dei principali vantaggi di Redis è la presenza di numerosi client che supportano linguaggi di sviluppo diversi. Per un elenco aggiornato dei client, vedere l'articolo relativo ai client Redis. Per esercitazioni che illustrano diversi linguaggi e client, vedere Come usare Redis gestito di Azure.
Esiste un emulatore locale per Azure Managed Redis?
Non esiste alcun emulatore locale per Azure Managed Redis. È tuttavia possibile eseguire una copia di Redis della community nel computer locale e connettersi per ottenere un'esperienza simile a un emulatore di cache locale, come illustrato nell'esempio seguente:
private static Lazy<ConnectionMultiplexer>
lazyConnection = new Lazy<ConnectionMultiplexer> (() =>
{
// Connect to a locally running instance of Redis to simulate
// a local cache emulator experience.
return ConnectionMultiplexer.Connect("127.0.0.1:6379");
});
public static ConnectionMultiplexer Connection
{
get
{
return lazyConnection.Value;
}
}
Redis viene eseguito in modalità nativa in Linux, ma è anche possibile usare un sottosistema Windows per Linux per eseguire Redis in un computer Windows. Per altre informazioni, vedere Installare Redis in Windows
Come si eseguono i comandi Redis?
È possibile usare uno dei comandi elencati in Comandi Redis, ad eccezione dei comandi elencati in Comandi Redis non supportati in Redis gestito di Azure. Per eseguire i comandi di Redis sono disponibili diverse opzioni.
È anche possibile usare gli strumenti da riga di comando di Redis. Per usarle, vedere Usare lo strumento da riga di comando Redis con Azure Managed Redis
Perché Azure Managed Redis non dispone di informazioni di riferimento sulla libreria di classi MSDN?
Redis gestito di Microsoft Azure si basa sull'archivio dati in memoria più diffuso, Redis. È possibile usare un'ampia gamma di client Redis per molti linguaggi di programmazione. Ogni client ha una propria API che effettua chiamate all'istanza di Redis gestita di Azure usando i comandi Redis.
Dal momento che ogni client è diverso, non è possibile trovare informazioni di riferimento centralizzate sulle classi in MSDN. Ogni client gestisce la propria documentazione di riferimento. Oltre alla documentazione di riferimento, sono disponibili diverse esercitazioni che illustrano come iniziare a usare Azure Managed Redis usando diversi linguaggi e client di cache. Per accedere a queste esercitazioni, vedere Come usare Redis gestito di Azure ed è un articolo di pari livello nel sommario.
Cosa sono i database Redis?
I database Redis sono semplicemente una separazione logica dei dati nella stessa istanza Redis. La memoria cache viene condivisa tra tutti i database e il consumo effettivo della memoria di un determinato database dipende da chiavi/valori memorizzati nel database. Al momento, Azure Managed Redis supporta solo un database per istanza.
Contenuto correlato
Altre domande frequenti su Redis gestito di Azure.