Was passiert mit der ASP.NET -Webanwendung (ASMX WS) auf IIS 6.0, wenn sie stundenlang im Leerlauf ist?
-
20-09-2019 - |
Frage
Ich habe einen ASMX -Webdienst und lade eine Reihe von Systemdaten in interne Datenstrukturen. Diese Systemdaten werden verwendet, um die Gültigkeit von Anforderungen zu überprüfen. Wenn es jedoch keine Anfragen für etwa 3 Stunden (möglicherweise weniger) gibt, werden die Initialisierungen erneut durchgeführt. Das Objekt, das den Anfragen dient
privates statisches Bool _initok
Variable, die die Initialzation steuert. Wenn die Anwendung im Leerlauf ist, wird die Variable auf False eingestellt. Liegt es daran, dass IIS die Ausführung stoppt und die DLL, die den Code enthält, entladen oder so? Wenn Anfragen in stetigem Intervall eintreffen, werden die Initialisierungen nicht erneut durchgeführt. Kann ich etwas dagegen tun?
Vielen Dank!
BR: Matti
Lösung
Es handelt sich um eine Einstellung des Anwendungspools (gefunden unter IIS -Manager), ob der Prozess gestoppt werden soll, wenn er für einen bestimmten Zeitraum iddle ist, oder wenn er ihn neu startet (recyceln), wenn bestimmte Bedingungen erfüllt sind.
Bei jedem Neustart des Prozesses wird Ihre Initialisierung erneut durchgeführt.