ASP.NET-Caching-Vorteile und Übersicht
Sie können geclusterte Sitzungen schnell und ohne Codeänderungen in Ihren vorhandenen ASP.NET-Anwendungen verwenden und sofort eine Leistungssteigerung in Ihrer Anwendung feststellen. NCache Bietet leistungsstarkes In-Memory-ASP.NET-Sitzungsclustering für Webfarmen, das schneller und skalierbarer ist als die Speicherung in einer Datenbank. Dies ist schneller, da Sitzungen im Arbeitsspeicher und näher an der ASP.NET-Anwendung gehalten werden. Und es ist skalierbarer, da Sitzungen auf mehrere Server in der Farm verteilt werden können, die größere Lasten besser bewältigen können als ein Datenbankserver.
Mit der NCachekönnen Sie die Verwendung von Sticky Sessions in Ihrem Load Balancer überflüssig machen. Dadurch wird die Skalierbarkeit Ihrer Anwendung deutlich verbessert. NCache Bietet leistungsstarkes dynamisches Clustering von Sitzungen. Sie können Sitzungen entweder lokal auf mehreren Webservern oder auf mehreren dedizierten Sitzungs-Caching-Servern replizieren oder verteilen. NCache bietet zahlreiche Funktionen, mit denen Sie Ihr Sitzungsclustering von kleinen bis hin zu großen Webfarmen erweitern können.
Der ASP.NET-Sitzungsstatus ermöglicht das Speichern von Sitzungsdaten in einer benutzerdefinierten Datenquelle durch Implementierung von SessionStateStoreProviderBase Klasse. Ein Session State Store Provider wurde mit implementiert NCache um Daten in einem verteilten Cache zu speichern.
NCache-basierter Session-State-Store-Anbieter bietet die folgenden Vorteile:
Keine Codeänderung: NCache Der Session State Provider kann in einer Anwendung ohne Codeänderung verwendet werden.
Bessere Leistung: Sitzungsdaten werden in einem In-Memory-Cache gespeichert, der maximale Leistung bietet.
Zuverlässigkeit: Standardmäßig wird die Sitzung im Speicher des ASP.NET-Prozesses gespeichert. Wenn der Prozess erneut ausgeführt wird oder der Anwendungsserver ausfällt, gehen Sitzungsdaten verloren. Mit NCachewerden Sitzungsdaten außerhalb des ASP.NET-Prozesses im Cache-Cluster gespeichert. Je nach Zuverlässigkeitsanforderungen kann eine beliebige Cache-Topologie gewählt werden. Falls also der Anwendungsserver ausfällt, bleiben die Sitzungsdaten verfügbar, wenn der ASP.NET-Prozess wiederverwendet wird oder der Anwendungsserver zurückkommt.
Keine Notwendigkeit für Sticky Sessions: NCache Der Session State Provider macht die Verwendung von Sticky Sessions im Load Balancer überflüssig.
NCache Cache-Speicher-Skalierbarkeit: NCache Sitzungsstatusanbieter verwendet NCache zur Aufbewahrung. Hier kann Cluster-Cache genutzt werden, um eine bessere Skalierbarkeit zu erreichen. Wenn Sie damit arbeiten, können Sie zur Laufzeit weitere Server zum Sitzungscluster hinzufügen. Dies führt zu mehr Skalierbarkeit und Zuverlässigkeit der Anwendung. ASP.NET-Sitzungsclustering für Webfarmen ist schneller und skalierbarer als die Speicherung in einer Datenbank.
Verfügbarkeit, Lastverteilung, Fehlertoleranz: In einer Webfarmumgebung sorgt es für eine bessere Fehlertoleranz, indem Sitzungsdaten auf allen Serverknoten im Cluster-Cache verfügbar bleiben, um eine größere Last besser bewältigen zu können. Dies liegt daran, dass Sitzungen auf mehrere Server in der Farm verteilt werden können. Daher kann man mit Sicherheit sagen, dass es zu einer hohen Leistung führt. Es eignet sich für das Session-Clustering von kleinen bis hin zu großen Webfarmen.
Cluster-Topologien: Für den Sitzungscache können unterschiedliche Clustering-Topologien verwendet werden. Die replizierte Topologie bietet einen Lastausgleich für Clients, sodass die Webanwendung bei starkem Datenverkehr nicht beeinträchtigt wird. Wenn ein Partition-Replica-Cache verwendet wird, bietet er der Anwendung eine hohe Skalierbarkeit, hohe Zuverlässigkeit und ist extrem schnell. Sitzungen können entweder lokal auf mehreren Webservern oder mehreren dedizierten Sitzungs-Caching-Servern repliziert oder verteilt/partitioniert werden. Einzelheiten zur Cache-Topologie finden Sie im Abschnitt Cache-Topologien.
Sitzungssuche im Cache leicht gemacht: Alle Sitzungsdaten im Cache können in einem einzigen Aufruf abgerufen werden. NCache Stellt ein Tag mit der Sitzung bereit. In einem einzigen Vorgang können alle Sitzungsdaten mit einem Tag einfach abgerufen werden.
Exklusive Sperre: Um Deadlock- und Datenintegritätsprobleme zu vermeiden, werden exklusive Sperren bereitgestellt NCache Sitzungsstatusanbieter. Die Sperrung ist konfigurierbar und standardmäßig deaktiviert.
Wiederholung der Verriegelungsfreigabe: Wenn eine exklusive Sperre verwendet wird, werden auch Sperrwiederholungen konfiguriert. Bei gleichzeitigen Anfragen kann die Sperre aufgehoben werden.
Standortaffinität: NCacheDie Location Affinity des Session State Providers verwaltet den ASP.NET-Sitzungsstatus über mehrere Webfarmen hinweg, die geografisch getrennt sind. Für die Standortaffinität müssen für jede Webfarm ein „primärer“ und ein oder mehrere „sekundäre“ Caches angegeben werden. Der primäre Cache wird für den gesamten lokalen Datenverkehr in der lokalen Region verwendet, und die sekundären Caches befinden sich in entfernten geografischen Regionen. Diese werden in der Anwendung konfiguriert Web.config Datei. Diese Optimierung ist nur in .NET 2.0 und späteren Versionen möglich.
In diesem Abschnitt
Eigenschaften des ASP.NET-Sitzungszustandsanbieters
Erklärt, wie Sitzungen mit gespeichert werden können NCacheSitzungsstatusanbieter für ASP.NET.
Konfiguration des ASP.NET-Sitzungszustandsanbieters für mehrere Regionen
Erklärt, wie die Funktion „Standortaffinität“ funktioniert NCache kann für Webfarmen mithilfe von Cluster-Caches konfiguriert werden, die über mehrere Regionen verteilt sind.
Sitzungsfreigabe zwischen ASP.NET und ASP.NET Core
Erklärt, wie ASP.NET-Sitzungen mit ASP geteilt und aktualisiert werden können.NET Core Sitzungen und umgekehrt.
ASP.NET SignalR Backplane
Erklärt, wie SignalR mit konfiguriert und verwendet wird NCache in ASP.NET-Anwendungen.
ASP.NET View State Caching
Erklärt die Verwendung von View State Caching und der Inhaltsoptimierungsfunktion von NCache.
Verteilter Cache für ASP.NET-Ausgabecaching
Zeigt, wie Output Caching verwendet wird, um die HTML-Ausgabe dynamischer Anforderungen an ASP.NET-Seiten zwischenzuspeichern und so den gesamten Antwortprozess zu beschleunigen.