Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 23864|Antwort: 1

[.NET Core] ASP.NET Core MVC Tutorial zur Speichercache-Nutzung

[Link kopieren]
Veröffentlicht am 12.11.2019, 16:16:36 | | | |
Bei der Entwicklung von Projekten wird Cache oft verwendet, um bestimmte Daten entsprechend den geschäftlichen Anforderungen zu speichern oder den Inhalt von Datenbankanfragen zu speichern, um den Druck auf die Datenbank zu verringern.

Häufig verwendete Speichercaches: System.Runtime.Caching / MemoryCache und Microsoft.Extensions.Caching.Memory

Microsoft hat zwei Lösungen, zwei verschiedene NuGet-Pakete zum Caching, beide sind großartig, laut Microsofts Empfehlung und bevorzugen Microsoft.Extensions.Caching.Memory, weil es besser mit dem Asp.NET-Kern integriert ist. Es kann einfach in den Abhängigkeitsinjektionsmechanismus von Asp.NET Core eingeschleust werden.

Dieser Artikel verwendet Microsoft.Extensions.Caching.Memory, um Daten zu cachen, die als MSCache abgekürzt werden, und Microsoft führt ein:Der Hyperlink-Login ist sichtbar.

Hinweis: Microsoft.Extensions.Caching.Memory ist thread-sicher

Was kann MSCache tun?

  • Absolut abgelaufener Support
  • Unterstützung für gleitende Verfallszeiten (gib eine Zeit an, TimeSpan, verschoben, wenn innerhalb der angegebenen Zeit eine zwischengespeicherte Zeit vorhanden ist, sonst läuft sie ab)
  • Abgelaufener Rückruf
  • Zollablauf


MemoryCacheEntryOptions-Cache-Cache-Einstellungen

  • Absolutes AblaufAbsolute Verfallszeit, falls null, ist die Bedingung ungültig
  • AbsoluteExpirationRelativJetztDie absolute Verfallszeit relativ zur aktuellen Zeit (unter Verwendung von TimeSpan) ist Nullbedingung ungültig
  • SlidingExpirationVerschiebe die Ablaufzeit
  • Ablauf-TokensVerfügbar, um den Cache-Ablauf anzupassen
  • Rückrufe nach der RäumungCache-Invalidierungsaufrufe
  • PrioritätCache-Item-Priorität (die Reihenfolge, in der der Cache vollständig gelöscht wird, wenn der Cache voll ist)
  • GrößeRepräsentiert die Größe der zwischengespeicherten Daten, die im In-Memory-Cache in der Regel null ist



Fang mit MSCache an

Projekt ASP.NET Core MVC
Nuget Command Installation:


Beim Verwenden erstellen Sie einfache Pakete.

Benutzeroberfläche:

Implementierung:


Abhängigkeitsinjektionskonfiguration Singleton


Tests verwenden MSCache

Schreiben Sie Daten mit relativem Ablauf und Sliding-Ablauf und führen Sie einen Lesetest mit dem Code wie folgt durch.

Controller-Code:

Schreibe zwischengespeicherte Daten:


Lesen Sie zwischengespeicherte Daten:

Zugang:Der Hyperlink-Login ist sichtbar.Nach Einstellung des relativen Ablaufs und des gleitenden Ablaufs greifen Sie zu: https://localhost:44370/Home/Get Erhalten Sie die zwischengespeicherten Daten wie folgt:




Innerhalb von 30 Sekunden habe ich den Link zum Lesen des Caches mehrfach besucht und festgestellt, dass der absolute Ablauf nach 30 Sekunden vollständig abgelaufen ist, aber ich konnte ihn nach dem Verschieben des Ablaufs noch lesen, wie in der Abbildung unten gezeigt:



(Ende)





Vorhergehend:[Fenster] XMind 8 Crack-Solve Self-Use Green Portable Edition
Nächster:Die DateTime-Zeit in .Net Core ist inkonsistent mit der Windows-Zeit in Linux Docker
 Vermieter| Veröffentlicht am 10.07.2024, 18:13:17 |
ASP.NET Core 8 fügt direkt hinzu: Builder. Services.AddMemoryCache();
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com