Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 23864|Risposta: 1

[.NET Core] ASP.NET Tutorial sull'uso della cache di memoria Core MVC

[Copiato link]
Pubblicato il 12-11-2019 16:16:36 | | | |
Quando si sviluppano progetti, la cache viene spesso utilizzata per memorizzare in cache alcuni dati in base alle loro esigenze aziendali, oppure per memorizzare in cache il contenuto delle query del database per ridurre la pressione sul database.

Cache di memoria comunemente utilizzate: System.Runtime.Caching / MemoryCache e Microsoft.Extensions.Caching.Memory

Microsoft ha 2 soluzioni, 2 diversi pacchetti NuGet per la cache, entrambi ottimi, secondo la raccomandazione di Microsoft, preferisco usare Microsoft.Extensions.Caching.Memory perché si integra meglio con il core Asp .NET. Può essere facilmente iniettato nel meccanismo di iniezione di dipendenza di Asp .NET Core.

Questo articolo utilizza Microsoft.Extensions.Caching.Memory per mettere in cache i dati, abbreviato in MSCache, e Microsoft introduce:Il login del link ipertestuale è visibile.

Nota: Microsoft.Extensions.Caching.Memory è thread-safe

Cosa può fare MSCache?

  • Supporto assolutamente scaduto
  • Supporto per scadenza scorrevole (specificare un tempo, TimeSpan, posticipato se c'è un tempo di cache all'interno del tempo specificato, altrimenti scadrà)
  • Callback scaduto
  • Scadenza personalizzata


Impostazioni della cache MemoryCacheEntryOptions

  • AssoluteExpirationTempo di scadenza assoluto, se nullo, la condizione è invalida
  • AssoluteExpirationRelativeToNowIl tempo di scadenza assoluto rispetto al tempo corrente (usando TimeSpan) è condizione nulla invalida
  • SlidingExpirationScorri il tempo di scadenza
  • ScadenzaTokenDisponibile per personalizzare la scadenza della cache
  • Richiami post-EvictionCallback per invalidazione della cache
  • PrioritàPriorità degli elementi della cache (l'ordine in cui la cache viene completamente cancellata quando la cache è piena)
  • DimensioniRappresenta la dimensione dei dati cache, che generalmente è nullo nella cache in memoria



Inizia con MSCache

Progetto ASP.NET MVC Core
Installazione del comando Nuget:


Quando usi, crea pacchetti semplici.

Interfaccia:

Implementazione:


Configurazione a iniezione di dipendenza singleton


I test utilizzano MSCache

Scrivi i dati usando la scadenza relativa e la scadenza scorrevole ed esegui un test di lettura con il codice come segue.

Codice Controller:

Scrivi dati nella cache:


Leggi i dati memorizzati in cache:

Accesso:Il login del link ipertestuale è visibile.Dopo aver impostato la scadenza relativa e la scadenza scorrevole, accedi a: https://localhost:44370/Home/Get Ottieni i dati memorizzati in cache come segue:




In 30 secondi, ho visitato il link per leggere la cache più volte e ho scoperto che la scadenza assoluta era completamente scaduta dopo 30 secondi, ma riuscivo comunque a leggerla dopo aver sfilato la scadenza, come mostrato nella figura sottostante:



(Fine)





Precedente:[Finestre] XMind 8 Crack-Solve Edizione Verde Portatile Auto-Uso
Prossimo:L'ora DateTime in .Net Core è incoerente con l'ora di Windows in Linux Docker
 Padrone di casa| Pubblicato il 10-7-2024 18:13:17 |
ASP.NET Core 8 aggiunge direttamente: costruttore. Services.AddMemoryCache();
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com