Wie kann ich den IIS-Cache leeren, ohne den Webserver neu zu starten?

8

Ich habe eine Website IIS 6.0, die Daten in den Cache legt. Leider ist kein Ablaufdatum festgelegt. Gibt es eine Möglichkeit (Dienstprogramm oder Befehl), das Löschen dieses Caches zu erzwingen, ohne den Computer neu zu starten oder den Webserver neu zu starten?

Ich habe bereits versucht, den Anwendungspool ohne Erfolg neu zu starten.

automatisch
quelle

Antworten:

3

Ich verwende iisreset über die Befehlszeile, aber dadurch werden der IIS-Verwaltungsdienst und alle abhängigen Dienste neu gestartet. Was mir nicht gefällt.

Der Cache, die App-Pools und der .net-Cache werden jedoch sauber gelöscht.

gbn
quelle
2

Sie können dies mit ASP.NET-Code tun:

foreach(DictionaryEntry entry in System.Web.HttpContext.Current.Cache) {
    System.Web.HttpContext.Current.Cache.Remove((string)entry.Key);
}
Chaos
quelle
1

Kann ich fragen, warum ein iisreset nicht möglich ist? Die wenigen Sekunden, die es dauert, sollten für Ihre Endbenutzer nicht erkennbar sein. Sie können es für eine ruhige Zeit des Tages planen, um die geringste Auswirkung zu erzielen.

Lazlow
quelle