Windows Azure è una grande piattaforma in continua evoluzione che si aggiunge in continuazione di nuovi strumenti. Tra questi, di recente si è aggiunta la possibilità di usare il servizio di cache distribuita, cioè la possibilità di sfruttare la RAM, di macchine autonomamente gestite dalla piattaforma, per memorizzare oggetti utili alle nostre applicazioni. La cache viene quindi sfruttata per inserire risultati di interrogazioni sui database, piuttosto che porzioni di HTML da restituire direttamente all'utente, scavalcando così tutto il normale processamento di una richiesta, con evidenti vantaggi prestazionali.
Il servizio di cache distribuito di Windows Azure ha il vantaggio che può essere utilizzato sia in ambienti on premise che sul cloud, come su Windows Azure stesso. Inoltre la cache può essere consumata e popolata contemporaneamente da più macchine, il tutto sgravandoci dalla gestione del servizio di cache stesso. Quello che dobbiamo fare è semplicemente creare dal portale un nuovo endpoint di cache, dimensionandolo.
A questo punto l'endpoint è pronto e per sfruttarlo dall'ambiente .NET possiamo utilizzare il pacchetto NuGet disponibile per Visual Studio. Installando Microsoft.WindowsAzure.Caching otteniamo referenziate le DLL e, se il progetto è di tipo ASP.NET, ci troviamo il web.config già predisposto per utilizzare la cache.
In particolare troviamo la sezione dataCacheClients che va completata negli attributi identifier (con il nome completo dell'endpoint creato) e authorizationInfo (con il token che troviamo nel riepilogo sul portale).
<dataCacheClients> <dataCacheClient name="default" requestTimeout="5"> <autoDiscover isEnabled="true" identifier="aspitalia.cache.windows.net" /> <securityProperties mode="Message" sslEnabled="false"> <messageSecurity authorizationInfo="token" /> </securityProperties> </dataCacheClient> </dataCacheClients>
A questo punto all'interno del progetto possiamo usare l'oggetto DataCache del namespace Microsoft.ApplicationServer.Caching, il cui uso è del tutto simile all'oggetto Cache di ASP.NET. Possiamo inoltre far sì che tutta la cache di ASP.NET, quella basata su OutputCache, o che la Session, venga depositata sul servizio di cache distribuito. Anche in questo caso troviamo il web.config già predisposto. Ci è sufficiente scommentare gli elementi sotto system.web/sessionState e system.web/caching.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Modificare i metadati nell'head dell'HTML di una Blazor Web App
What's new in Azure Functions and Extensions
Determinare lo stato di un pod in Kubernetes
Short-circuiting della Pipeline in ASP.NET Core
Sfruttare i KeyedService in un'applicazione Blazor in .NET 8
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Implementare il throttling in ASP.NET Core
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Assegnare un valore di default a un parametro di una lambda in C#
Utilizzare il trigger SQL con le Azure Function
Reactive form tipizzati con modellazione del FormBuilder in Angular
Utilizzare HiLo per ottimizzare le insert in un database con Entity Framework
I più letti di oggi
- Riordinare le righe di una GridView di ASP.NET con jQuery
- Creazione di un alarm con suono personalizzato con Windows Phone 7.1
- Utilizzare la session affinity con Azure Container Apps
- Blue-green deployment con Azure Web App e DevOps
- Ed infine anche il calendario :)
- Configurare la diagnostica di Azure attraverso Visual Studio
- Recuperare la data di creazione di un tag tramite una pipeline YAML di Azure DevOps
- Microsoft Security Bulletin MS05-002
- .NET Core e dispositivi IoT
- Eseguire attività pianificate con Azure Container Jobs