Jeder Caching-Technologie/Methoden, um ihren eigenen Satz von Funktionen. Diese Merkmale scheinen in einem Anwendungsfall von Nachteil zu sein, können aber bei anderen Anwendungsanforderungen vorteilhaft sein.
Also, kurz gesagt, je nach Ihren Anforderungen entscheiden, welche Caching-Technologie und welche Funktionen für Sie am besten sind.
For example, Let us discuss some client side Caching techniques
.
MSDN sagt, dass wir auch HiddenField
können nur geringe Mengen an häufig wechselnden Daten in versteckten Feldern zu speichern, weil diese Daten in dem Roundtrip zum Server auf jedem Postback enthalten ist.
Vorteile dieser Funktion: Verringern die Arbeitsbelastung auf dem Server von Seiteninformationen unter Verwendung von clientseitigen Optionen zu speichern.
Allerdings sagt MSDN klar, dass: Dieser Ansatz hat minimale Sicherheitsunterstützung.
So kann man diese Funktion immer verwenden oder nicht, da Sicherheitsüberlegungen auch da sind.
Consider one more example
, Page Output caching
: Es ist aus 2 Typen, Seitenausgabe-Caching und Seitenfragment-Caching.
Seitenausgabe Zwischenspeicherung zwischenspeichert eine gesamte Webseite und ist nur geeignet, wenn der Inhalt dieser Seite ziemlich statisch ist. Wenn sich Teile der Seite ändern, können Sie die statischen Abschnitte als Benutzersteuerelemente umschließen und die Benutzersteuerelemente mithilfe der Seitenfragment-Zwischenspeicherung zwischenspeichern.
And one last comment on
Application
vs HttpRuntime.cache
:
Application
ist kein Cache, das eine globale Sammlung namens Wert. Wenn Sie ein Objekt zu Application
hinzufügen, bleibt es so lange bestehen, bis eine AppDomain wiederverwendet wird.
- Application-Variablen Variablen
- Application-Variablen verhalten sich wie statische Variablen und sie sind Ersatz von statischen Variablen unter allen Benutzern einer Web-Anwendung gemeinsam genutzt werden als statische Variablen in Web-Anwendungen
- nur gemeinsame Werte sollten staatenlos sind sein in Anwendungsvariablen beibehalten, und sobald sie nicht verwendet werden, sollten sie explizit entfernt werden.
Cache
: Es ist möglich, signifikante Performance-Verbesserungen in ASP.NET-Anwendungen zu erhalten, indem das Zwischenspeichern häufig angeforderten Objekte und Daten entweder in den Application
oder Cache
Klassen. Während die Cache
Klasse sicherlich viel mehr Flexibilität und Kontrolle bietet, scheint es nur einen marginalen Vorteil in Bezug auf erhöhten Durchsatz über die Application
Klasse für Caching bieten. Es wäre sehr schwierig, ein Testschema zu entwickeln, das die möglichen Vorteile der integrierten Klasse Cache
von weniger genutzten Objekten durch den Aufräumprozess genau messen könnte, im Gegensatz zu der Tatsache, dass Application diese Funktion nicht bietet. Der Entwickler muss in diesem Fall eine Entscheidung treffen und sollte auf den Bedürfnissen und der Zweckmäßigkeit des Projekts und seiner Nutzungsmuster basieren. Überprüfen Sie this link für mehr.
Siehe this MSDN article für eine komplette große Erklärung aller Caching-Technologien in Asp.net mit discusiion auf die Merkmale der einzelnen Technologien.
Auch sind diese zwei Links eine große Quelle für den Anfang:
Es hängt davon ab, was Sie tun möchten, aber ich mag die "Application" -Einträge nicht. Ich bevorzuge eine 'IDictionary'. 'Cache' ist in Ordnung, wenn Sie Ihre Daten neu erstellen können. –