ASP.NET-Cachingfeatures
Einer der wichtigsten Faktoren bei der Entwicklung hochleistungsfähiger, skalierbarer Webanwendungen ist die Fähigkeit, Elemente wie Datenobjekte, Seiten oder Seitenbereiche bei der ersten Anforderung im Arbeitsspeicher zu speichern. Diese Elemente können auf dem Webserver oder mittels anderer Software im Anforderungsstream, z. B. Proxyserver oder Browser, gespeichert werden. Auf diese Weise müssen Informationen, die in einer vorherigen Anforderung bereits abgefragt wurden, nicht neu erstellt werden. Dies gilt besonders für Informationen, für die beträchtliche Prozessorzeit oder andere Ressourcen erforderlich sind. Dieses als Zwischenspeichern oder Caching bezeichnete Verfahren ermöglicht die Verwendung diverser Techniken, um Seitenausgaben oder Anwendungsdaten übergreifend über HTTP-Anforderungen zu speichern und wiederzuverwenden. Folglich müssen die Informationen vom Server nicht neu erstellt werden, wodurch Zeit und Ressourcen gespart werden.
ASP.NET bietet zwei Cachingtypen, mit deren Hilfe hochleistungsfähige Webanwendungen entwickelt werden können. Der erste Typ wird Ausgabecaching genannt. Er ermöglicht die Speicherung dynamischer Seiten und Antworten von Benutzersteuerelementen auf einem beliebigen Gerät im Ausgabestream, das sich zwischen dem ursprünglichen Server und dem anfordernden Browser befindet und das HTTP 1.1-Caches unterstützt. Bei nachfolgenden Anforderungen wird der Code für die Seite bzw. das Benutzersteuerelement nicht ausgeführt. Für die Anforderung wird stattdessen die zwischengespeicherte Ausgabe verwendet. Beim zweiten Cachingtyp handelt es sich um das herkömmliche Zwischenspeichern von Anwendungsdaten. Mit diesem Verfahren können beliebige Objekte, z. B. Datasets, programmgesteuert im Serverspeicher gespeichert werden. Die Objekte müssen in der Anwendung nicht neu erstellt werden, wodurch Zeit und Ressourcen gespart werden.
In diesem Abschnitt
- Zwischenspeichern von ASP.NET-Seiten
Beschreibt die Änderungen, die an Seiten vorgenommen werden müssen, damit Sie die Zwischenspeicherung von Seitenausgaben nutzen können. Es wird u. a. ausführlich erläutert, wie Sie die Zwischenspeicherung von Seitenausgaben abhängig von folgenden Faktoren variieren können: anfordernde URIs, Parameter für GET-Abfragezeichenfolgen oder POST-Formularparameter und benutzerdefinierte Zeichenfolgen. In ASP.NET können Sie die HttpCachePolicy-Klasse programmgesteuert über die Page.Response-Eigenschaft oder mit Hilfe deklarativer Syntax bearbeiten. - Zwischenspeichern von Teilen einer ASP.NET-Seite
Erörtert Techniken, die Sie zum Zwischenspeichern von Seitenbereichen mit der @ OutputCache-Direktive und mit Benutzersteuerelementen verwenden können. Diese Technik bietet sich an, wenn keine ganzen Seiten zwischengespeichert werden sollen. - Zwischenspeichern von Anwendungsdaten
Gibt einen Überblick über Begriffe im Zusammenhang mit dem ASP.NET-Anwendungscache und enthält Beispiele zur Verwendung der dazugehörigen Klassen, Methoden und Eigenschaften.
Verwandte Abschnitte
- @ OutputCache
Beschreibt die für Seitenentwickler verfügbare Syntax, mit der die Einstellungen für einen Seitenausgabecache in einer ASP.NET-Seite bzw. einem ASP.NET-Benutzersteuerelement geändert werden können. - ASP.NET-Optimierung
Beschreibt optimale Vorgehensweisen für die Entwicklung hochleistungsfähiger ASP.NET-Webanwendungen. Enthält eine Übersicht der Tools, mit denen die Anwendungsleistung getestet und überwacht werden kann. Umfasst außerdem eine Liste der im Lieferumfang von ASP.NET enthaltenen Leistungsindikatoren. - Erstellen von ASP.NET-Webanwendungen
Bietet eine Einführung in ASP.NET und zugehörige Features, einschließlich Web Forms und Webdienste. - System.Web.Caching-Namespace
Dokumentiert die Verwendung der Klassen und Enumerationen, durch die ASP.NET-Anwendungscaching implementiert wird. - HttpCachePolicy-Klasse
Enthält Methoden zum Festlegen cachespezifischer HTTP-Header und -Methoden, die den ASP.NET-Ausgabecache steuern. - HttpCacheability-Enumeration
Enthält aufgelistete Werte, mit deren Hilfe Einstellungen für den HTTP-Header Cache-Control festgelegt werden.