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 Taghilfshilfen finden Sie unter Taghilfshilfen 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 von IDistributedCache in Startup.ConfigureServices (IDistributedCache) erstellt wurde, verwendet das Taghilfsprogramm für verteilten Cache zum Speichern von zwischengespeicherten Daten denselben In-Memory-Anbieter wie das Startup.ConfigureServices.

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 Cachetaghilfs-Tool, das jeder Instanz basierend auf dem Seitennamen und dem Speicherort auf der Seite einen Cacheschlüssel RazorRazor zuweist, basiert das Taghilfs-Tool für verteilte Caches 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 zu diesen Implementierungen finden Sie unter Verteiltes Zwischenspeichern 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