Wird der ASP.Net Cache zwischen verschiedenen Benutzersitzungen freigegeben?

8

Auf einer Seite, wenn ich Folgendes mache:

  

Cache ["key"] = myObject;

Ist das zwischengespeicherte Objekt für Anforderungen verfügbar, die für andere Benutzer gelten?

    
tpower 04.03.2009, 15:00
quelle

3 Antworten

14

Ja. Der Cache ist Application level und alle Benutzer befinden sich in derselben Anwendung.

Wenn Sie einen benutzerspezifischen Cache benötigen, können Sie die Sitzung verwenden, aber das ist nicht ganz dasselbe. Der Cache ermöglicht dem Framework, Elemente automatisch auf andere Weise als die Sitzung zu verfallen. Wenn Sie das Cache-Verhalten auf einer Benutzerbasis (nicht unbedingt eine gute Idee) möchten, könnten Sie die Benutzer-ID als Teil Ihres Schlüssels für den Haupt-Cache erstellen.

    
Joel Coehoorn 04.03.2009, 15:02
quelle
9

Ja, es ist für alle Benutzer auf demselben Server verfügbar. Wenn Sie jedoch eine Farm ausführen, ist sie nur für Benutzer verfügbar, die den Server verwenden, auf dem die Daten zum Zwischenspeichern hinzugefügt wurden.

    
AaronS 04.03.2009 15:06
quelle
1

Cache ist gut für jede AppDomain. Die einzelnen Anwendungen wie Web Applications bleiben normalerweise in der einzelnen AppDomain. Der Cache kann jedoch nicht zwischen einer Webanwendung und einem Webdienst geteilt werden.

    
RocketsLee 15.04.2009 20:30
quelle

Tags und Links