Taghilfsprogramm für verteilten Cache in ASP.NET Core

Von Peter Kellner

Durch das Taghilfsprogramm für verteilten Cache kann die Leistung Ihrer ASP.NET Core-App erheblich verbessert werden, indem deren Inhalte in einer verteilten Cachequelle zwischengespeichert werden.

Eine Übersicht über Taghilfen finden Sie unter "Tag-Hilfer" in ASP.NET Core.

Das Taghilfsprogramm für verteilten Cache erbt von derselben Basisklasse wie das Cache-Taghilfsprogramm. Alle Attribute des Cache-Taghilfsprogramms sind für das Taghilfsprogramm für verteilten Cache verfügbar.

Das Taghilfsprogramm für verteilten Cache verwendet die Konstruktorinjektion. Die Schnittstelle IDistributedCache wird an den Konstruktor des Taghilfsprogramms für verteilten Cache übergeben. Wenn keine konkrete Implementierung IDistributedCache erstellt Startup.ConfigureServices wird (Startup.cs), verwendet die Verteilte Cachetag-Hilfshilfe denselben Speicheranbieter zum Speichern zwischengespeicherter Daten wie die Cachetaghilfe.

Attribute des Taghilfsprogramms für verteilten Cache

Attribute, die für das Cache-Taghilfsprogramm freigegeben sind:

  • enabled
  • expires-on
  • expires-after
  • expires-sliding
  • vary-by-header
  • vary-by-query
  • vary-by-route
  • vary-by-cookie
  • vary-by-user
  • vary-by
  • priority

Das Taghilfsprogramm für verteilten Cache erbt von derselben Klasse wie das Cache-Taghilfsprogramm. Beschreibungen dieser Attribute finden Sie im Cache-Taghilfsprogramm.

name

Attributtyp Beispiel
String my-distributed-cache-unique-key-101

name ist erforderlich. Das name-Attribut wird als Schlüssel für die einzelnen gespeicherten Cacheinstanzen verwendet. Im Gegensatz zum Cachetag-Hilfsprogramm, der jeder Instanz basierend auf dem Razor Seitennamen und dem Speicherort auf der Razor Seite einen Cacheschlüssel zuweisen kann, basiert die Verteilte Cachetag-Hilfe nur auf dem Attribut name.

Beispiel:

<distributed-cache name="my-distributed-cache-unique-key-101">
    Time Inside Cache Tag Helper: @DateTime.Now
</distributed-cache>

Implementierungen von IDistributedCache im Taghilfsprogramm für verteilten Cache

In ASP.NET Core gibt es zwei Implementierungen von IDistributedCache. Eine basiert auf SQL Server, die andere auf Redis. Drittanbieterimplementierungen sind ebenfalls verfügbar, z. B. NCache. Details dieser Implementierungen finden Sie unter "Verteilte Zwischenspeicherung" in ASP.NET Core. Für beide Implementierungen wird eine Instanz von IDistributedCache in Startup festgelegt.

Es gibt keine Tagattribute, die einer bestimmten Implementierung von IDistributedCache explizit zugeordnet sind.

Zusätzliche Ressourcen