Avvio rapido: usare cache di Azure per Redis con un'app Web ASP.NET Core
In questa guida introduttiva si incorporano cache di Azure per Redis in un'applicazione Web ASP.NET Core che si connette a cache di Azure per Redis per archiviare e recuperare dati dalla cache.
Esistono anche provider di memorizzazione nella cache in .NET Core. Per iniziare rapidamente a usare Redis con modifiche minime al codice esistente, vedere:
- provider di cache di output principale ASP.NET
- ASP.NET provider di memorizzazione nella cache distribuita principale
- provider di sessioni Redis di base ASP.NET
Passare al codice in GitHub
Clonare il repository https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet-core in GitHub.
Come passaggio successivo, è possibile visualizzare un'applicazione eShop scenario reale che illustra i provider di memorizzazione nella cache di base ASP.NET: ASP.NET core eShop usando i provider di memorizzazione nella cache Redis.
Funzionalità incluse:
- Memorizzazione nella cache distribuita redis
- Provider di stato della sessione Redis
Le istruzioni di distribuzione sono disponibili nel README.md.
Prerequisiti
- Sottoscrizione di Azure: creare un account gratuito
- ASP.NET Core SDK
Creare una cache
Per creare una cache, accedere al portale di Azure e selezionare Crea una risorsa.
Nella pagina Attività iniziali digitare cache di Azure per Redis nella casella di ricerca. Quindi, selezionare Crea.
Nella pagina Nuova cache Redis configurare le impostazioni per la cache.
Impostazione Scegliere un valore Descrizione Abbonamento Nell'elenco a discesa selezionare la sottoscrizione. Sottoscrizione in cui creare la nuova istanza della cache di Azure per Redis. Gruppo di risorse Nell'elenco a discesa selezionare un gruppo di risorse oppure scegliere Crea nuovo e immettere il nome di un nuovo gruppo di risorse. Nome del gruppo di risorse in cui creare la cache e altre risorse. L'inserimento di tutte le risorse di un'app in un unico gruppo di risorse ne semplifica la gestione o l'eliminazione. Nome DNS Immettere un nome univoco. Il nome della cache deve essere una stringa compresa tra 1 e 63 caratteri contenente solo numeri, lettere o trattini. Il nome deve iniziare e terminare con un numero o una lettera e non può contenere trattini consecutivi. Il nome host dell'istanza della cache è <nome DNS>.redis.cache.windows.net. Location Nell'elenco a discesa selezionare una località. Selezionare un'area in prossimità di altri servizi che useranno la cache. Cache SKU A discesa e selezionare uno SKU. Lo SKU determina le dimensioni, le prestazioni e i parametri delle funzionalità disponibili per la cache. Per altre informazioni, vedere la panoramica su Cache Redis di Azure. Dimensioni della cache Elenco a discesa e selezionare una dimensione della cache Per altre informazioni, vedere la panoramica su Cache Redis di Azure. Selezionare la scheda Rete o selezionare il pulsante Rete nella parte inferiore della pagina.
Nella scheda Rete selezionare il metodo di connettività.
Selezionare la scheda Avanti: Avanzate oppure selezionare il pulsante Avanti: Avanzate nella parte inferiore della pagina per visualizzare la scheda Avanzate.
- Per le cache Basic o Standard, attivare o disattivare la selezione per una porta non TLS. È anche possibile selezionare se si vuole abilitare l'autenticazione di Microsoft Entra.
- Per una cache Premium, configurare le impostazioni per la porta non TLS, il clustering, l'identità gestita e la persistenza dei dati. È anche possibile selezionare se si vuole abilitare l'autenticazione di Microsoft Entra.
Selezionare la scheda Avanti: Tag oppure selezionare il pulsante Avanti: Tag nella parte inferiore della pagina.
Facoltativamente, nella scheda Tag immettere il nome e il valore se si vuole categorizzare la risorsa.
Selezionare Rivedi e crea. Viene visualizzata la scheda Rivedi e crea in cui Azure convalida la configurazione.
Quando viene visualizzato il messaggio di convalida verde, selezionare Crea.
La creazione di una cache richiede un po' di tempo. È possibile monitorare lo stato di avanzamento nella pagina Panoramica della cache di Azure per Redis. Quando l'elemento Stato indica In esecuzione, la cache è pronta per l'uso.
Recuperare il nome host, le porte e le chiavi di accesso dal portale di Azure
Per connettere il server Cache Redis di Azure, il client della cache deve avere il nome host, le porte e una chiave per la cache. Alcuni client possono fare riferimento a questi elementi usando nomi leggermente diversi. È possibile ottenere il nome host, le porte e le chiavi dal portale di Azure.
Per ottenere le chiavi di accesso, selezionare Autenticazione dal menu Risorsa. Selezionare quindi la scheda Chiavi di accesso.
Per ottenere il nome host e le porte per la cache, selezionare Panoramica dal menu Risorsa. Il formato del nome host è <Nome DNS>.redis.cache.windows.net.
Prendere nota del nome host e della chiave di accesso primaria. Questi valori verranno usati in un secondo momento per costruire il segreto CacheConnection .
Aggiungere un segreto locale per la stringa di connessione
Nella finestra di comando eseguire il comando seguente per archiviare un nuovo segreto denominato CacheConnection, dopo aver sostituito i segnaposto, incluse le parentesi angolari, per il nome della cache e la chiave di accesso primaria:
dotnet user-secrets set CacheConnection "<cache name>.redis.cache.windows.net,abortConnect=false,ssl=true,allowAdmin=true,password=<primary-access-key>"
Connettersi alla cache con RedisConnection
La RedisConnection
classe gestisce la connessione alla cache. La connessione viene effettuata in questa istruzione nella HomeController.cs
cartella Controllers :
_redisConnection = await _redisConnectionFactory;
In RedisConnection.cs
viene visualizzato che lo StackExchange.Redis
spazio dei nomi viene aggiunto al codice. Questa operazione è necessaria per la classe RedisConnection
.
using StackExchange.Redis;
Il RedisConnection
codice garantisce che sia sempre presente una connessione integra alla cache gestendo l'istanza ConnectionMultiplexer
da StackExchange.Redis
. La classe RedisConnection
ricrea la connessione quando una connessione viene persa e non è possibile riconnettersi automaticamente.
Per altre informazioni, vedere StackExchange.Redis e il codice in un repository GitHub.
Visualizzazioni layout nell'esempio
Il layout della home page per questo esempio viene archiviato nel file _Layout.cshtml . Da questa pagina si avvia il test effettivo della cache facendo clic sul cache di Azure per Redis Test da questa pagina.
Aprire Views\Shared\_Layout.cshtml.
Dovrebbe essere visualizzato in
<div class="navbar-header">
:<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="RedisCache">Azure Cache for Redis Test</a>
Visualizzazione dei dati dalla cache
Nella home page selezionare cache di Azure per Redis Test per visualizzare l'output di esempio.
In Esplora soluzioni espandere la cartella Views e fare clic con il pulsante destro del mouse sula cartella Home.
Questo codice dovrebbe essere visualizzato nel file RedisCache.cshtml .
@{ ViewBag.Title = "Azure Cache for Redis Test"; } <h2>@ViewBag.Title.</h2> <h3>@ViewBag.Message</h3> <br /><br /> <table border="1" cellpadding="10"> <tr> <th>Command</th> <th>Result</th> </tr> <tr> <td>@ViewBag.command1</td> <td><pre>@ViewBag.command1Result</pre></td> </tr> <tr> <td>@ViewBag.command2</td> <td><pre>@ViewBag.command2Result</pre></td> </tr> <tr> <td>@ViewBag.command3</td> <td><pre>@ViewBag.command3Result</pre></td> </tr> <tr> <td>@ViewBag.command4</td> <td><pre>@ViewBag.command4Result</pre></td> </tr> <tr> <td>@ViewBag.command5</td> <td><pre>@ViewBag.command5Result</pre></td> </tr> </table>
Eseguire l'app in locale
Eseguire il comando seguente nella finestra di comando per compilare l'app:
dotnet build
Eseguire quindi l'app con il comando seguente:
dotnet run
Passare a
https://localhost:5001
nel Web browser.Selezionare cache di Azure per Redis Test nella barra di spostamento della pagina Web per testare l'accesso alla cache.
Pulire le risorse
Per continuare a usare le risorse create in questo articolo, mantenere il gruppo di risorse.
In caso contrario, se le risorse sono state completate, è possibile eliminare il gruppo di risorse di Azure creato per evitare addebiti.
Importante
L'eliminazione di un gruppo di risorse è irreversibile. Quando si elimina un gruppo di risorse, tutte le risorse in esso contenute vengono eliminate in modo permanente. Assicurarsi di non eliminare accidentalmente il gruppo di risorse sbagliato o le risorse errate. Se sono state create le risorse all'interno di un gruppo di risorse esistente che contiene le risorse da mantenere, è possibile eliminare ogni risorsa singolarmente anziché eliminare il gruppo di risorse.
Per eliminare un gruppo di risorse
Accedere al portale di Azure e selezionare Gruppi di risorse.
Scegliere il gruppo di risorse da eliminare.
Se sono presenti molti gruppi di risorse, usare la casella Filtro per qualsiasi campo... digitare il nome del gruppo di risorse creato per questo articolo. Selezionare il gruppo di risorse nell'elenco dei risultati.
Selezionare Elimina gruppo di risorse.
Verrà chiesto di confermare l'eliminazione del gruppo di risorse. Digitare il nome del gruppo di risorse per confermare e quindi selezionare Elimina.
Dopo qualche istante, il gruppo di risorse e tutte le risorse che contiene vengono eliminati.
Contenuto correlato
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per