Daten werden selten präsentiert, ohne dass Parameter gesetzt werden. Die Seite in Listing C verwendet den VaryByParams-Parameter, um Beschäftigtendaten für bestimmte Nutzer zwischenzuspeichern (die über den Wert employeeidQueryString bestimmt werden). Listing D enthält den entsprechenden VB.NET-Code.
Dieser Code könnte – abhängig von der Anzahl der Aufgerufenen Beschäftigten – viel Speicherplatz belegen, jedoch nicht lange.
Listing C
Listing D
Das Ergebnis ist die Zwischenspeicherung von Seitendaten über den Parameter employeeidquerystring. Es kann dazu kommen, dass sich bei einer großen Anzahl von Mitarbeiteranfragen eine große Datenmenge im Speicher befindet, jedoch wird diese nur eine Minute lang zwischengespeichert. Wenn eine Anwendung multiple Parameter hat, sollte man diese im VaryByParam-Parameter mit Kommas voneinander trennen.
Die beiden Herangehensweisen in den vorstehenden Beispielen zeigen die häufigsten Anwendungen für Caching auf Seitenebene. Es stehen jedoch (wie die Liste der Parameter zeigt), abhängig von der jeweiligen Anwendung, zahlreiche Optionen zur Verfügung.
Mit Bedacht vorgehen
Während das Zwischenspeichern eine Funktion ist, mit der man die Performance einer Anwendung durch Verkürzung der Reaktionszeiten hervorragend steigern kann, sollte man es trotzdem nur dort einsetzen, wo es wirklich angebracht ist. Die Verwendung von Caching-Funktionen in einer Anwendung hat ihren Preis – Web-Server-Ressourcen. Zwischengespeicherte Werte werden im Speicher des Web-Servers abgelegt. Dessen Speicherkapazität ist begrenzt. Wenn man es mit dem Caching also übertreibt, kann er vollständig ausgelastet werden. Allerdings werden die Inhalte des Zwischenspeichers gelöscht, wenn der Systemspeicher voll belegt ist (damit das System weiterlaufen kann). Wie gesagt, Caching sollte unter ASP.NET eben mit Bedacht eingesetzt werden.
ASP.NET 2.0
Die neuste Version von ASP.NET baut auf den in Version 1.x vorhandenen Caching-Funktionen auf. ASP.NET 2.0 erweitert die Möglichkeiten zur Datenbank-Cache-Invalidierung. Man kann jetzt problemlos sicherstellen, dass Cache-Bestandteile mit den Veränderungen in der Datenbank aktualisiert werden. Dies ist mit einem definierten und programmatischen Output-Caching möglich und ebenso über das Cache API- und das SqlCacheDependency-Objekt.
Wahrnehmung ist alles
Nichts definiert die Akzeptanz, die eine Website bei den Nutzern findet, so sehr wie die Reaktionszeiten der Seite. Erwartet werden fast augenblickliche Ladezeiten. Web-Entwickler leisten harte Arbeit, um Anwendungen mit annehmbaren Reaktionszeiten zu bieten. ASP.NET hilft hier mit den verschiedenen Seiten- und Datenoptionen, die man einsetzen kann, um die Zahl der Datenaufrufe und somit die Ladezeit zu verringern.
Neueste Kommentare
Noch keine Kommentare zu Eine schnellere Website mit ASP.NET-Caching
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.