2009-10-26 3 views
6

In den Eigenschaften ist ein Kontrollkästchen mit der Aufschrift "Recycle worker processes" aktiviert, das auf 1740 Minuten festgelegt ist.Was genau bedeutet Recycle-App-Pool für die Anwendung?

Was genau bedeutet es für meinen asp.net-Code? Wird alles von den statischen Variablen oder den Sitzungs-/Anwendungsvariablen weg sein?

Was genau bedeutet Recycling für den Code?

Antwort

4

IIS recycelt den Arbeitsprozess, der Ihre App hostet. Das bedeutet, dass AppDomain, HttpContext, statische Variablen und alles zurückgesetzt werden.

Es ist immer gut zu programmieren, als ob der gesamte Prozess jederzeit abgebrochen werden könnte.

4

Recycle bedeutet, dass der IIS-Arbeitsprozess heruntergefahren und der neue gestartet wird. I.E es wird Ihre Anwendung neu starten. Es ist ein Schutz gegen festgefahrene Threads/Speicherlecks in Ihrer Anwendung.

7

Recycle bedeutet, dass eine neue Gruppe von Prozessen gestartet wird, um neue Anforderungen für Anwendungen im Pool zu bearbeiten. Alle ausstehenden Anforderungen werden normal ausgeführt (vorausgesetzt, sie dauern nicht zu lange), und zu diesem Zeitpunkt werden die alten Prozesse für den Pool ordnungsgemäß beendet.

Daher statische Variablenwerte und Werte im Anwendungsobjekt gespeichert werden, auch wenn die Sitzung in-proc gespeichert wird, sind auch die Sitzungswerte verloren.