Ist es in Ordnung, statische Variablen zum Zwischenspeichern von Informationen in ASP.net zu verwenden?

Momentan arbeite ich an einer Projektadministrationsanwendung in C # 3.5 auf ASP.net. Um die Zugriffe auf die Datenbank zu reduzieren, werden viele Informationen mithilfe statischer Variablen zwischengespeichert. Beispielsweise wird eine Liste von Benutzern in einer statischen Klasse gespeichert. Die Klasse liest beim Start alle Informationen aus der Datenbank ein und aktualisiert die Datenbank, wenn Änderungen vorgenommen werden, sie muss jedoch nie aus der Datenbank lesen.

Die Klasse pingt andere Webserver (sofern vorhanden) gleichzeitig mit aktualisierten Informationen an, um in die Datenbank zu schreiben. Der Ping-Mechanismus ist ein Windows-Dienst, bei dem sich das Cache-Objekt über einen zufällig verfügbaren Port registriert. Es wird auch für andere Dinge verwendet.

Die Datenmenge ist nicht so toll. Im Moment verwende ich es nur, um die Benutzer zwischenzuspeichern (Passwort-Hashes, Berechtigungen, Name, E-Mail usw.). Es speichert nur einen Stapel von Anrufen, die in der Datenbank getätigt werden.

Ich habe mich gefragt, ob es irgendwelche Fallstricke bei dieser Methode gibt und / oder ob es bessere Möglichkeiten gibt, die Daten zwischenzuspeichern.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage