Aktualisieren Sie ASP.NET web.config, während die Clientanforderung noch läuft

8

Was passiert, wenn web.config aktualisiert wird, während der ASP (ASP.NET 2.0) -Server die Clientanforderung noch verarbeitet? - Wird der Prozess getötet werden? - Wenn nicht, liest der Prozess die Updates in web.config.

danke für jede Eingabe

    
user150528 18.03.2010, 17:25
quelle

4 Antworten

8

Das neue web.config ist im Grunde eine Kopie, also wird eine laufende Anfrage unbeeinträchtigt beendet - sie nimmt die Änderungen nicht auf. Wenn die Anforderung abgeschlossen ist, wird das neue web.config über das alte geschrieben, und nachfolgende Anforderungen funktionieren mit den aktualisierten Werten (in einer neuen Anwendungsdomäne).

    
Jay 18.03.2010, 17:36
quelle
5

Microsoft: "ASP.NET liefert alle ausstehenden Anforderungen vor dem Neustart"

- Ссылка

  

Beim Neustart einer Anwendung   erforderlich, ASP.NET wird allen dienen   ausstehende Anfragen aus dem bestehenden   Anwendungsdomäne und das alte   Baugruppen vor dem Neustart der   Anwendungsdomäne und Laden der neuen   Baugruppen.

und Folgen des Logikflusses durch Änderungen an der asp.net Web.config-Datei ...

"Konfigurationsänderungen verursachen einen Neustart der Anwendungsdomäne"

Die App startet neu. Es gibt jedoch auch einen Trick in diesem ersten Klappentext, um dieses "Problem" zu umgehen.

  

Änderungen der Konfigurationseinstellungen in   Web.config Dateien indirekt verursachen die   Anwendungsdomäne neu starten.   Verhalten tritt von Entwurf auf. Sie können   Verwenden Sie optional die ConfigSource   Attribut zu Verweis extern   Konfiguration Dateien, die nicht verursachen   ein Neustart , wenn eine Änderung vorgenommen wird. Zum   Weitere Informationen finden Sie unter configSource in   Allgemeine Attribute Vererbt von   Abschnittselemente.

     

Versucht, eine Konfiguration zu ändern   Datei von jemandem, der nicht hat   Berechtigung zum Bearbeiten der Datei wird nicht   einen Neustart der Anwendung verursachen   Domäne.

^ - Ссылка

Zustandsverlust

Ihre Anwendung, Sitzung und andere Zustände gehen verloren, wenn sie in Prozess gespeichert werden ...

  

Bei Verwendung des In-Process   Sitzungsstatusmodus, Sitzungsstatusdaten   ist verloren, wenn aspnet_wp.exe oder die   Anwendungsdomäne wird neu gestartet. .

^ - Ссылка

  

Die Implikationen des Lebenszyklus von   Informationen in Anwendung gespeichert   Status Die .NET Framework-Anwendung   Domain oder der Prozess Hosting eines   .NET-basierte Anwendung kann zerrissen werden   jeden Moment nieder und zerstört   während der Anwendungsausführung (als   Ergebnis von Abstürzen, Code-Updates,   geplanter Prozess startet neu und so   auf).

^ - Ссылка

usw. Nur einige Miscellane. Info zum Speichern des Sitzungsstatus außerhalb des Prozesses.

^ - Ссылка

    
John K 18.03.2010 17:30
quelle
2

Ich glaube, wenn Sie Änderungen an web.config vornehmen, lädt ASP.NET Ihre Anwendung automatisch neu, indem der Anwendungspool wiederverwendet wird. Dies führt natürlich dazu, dass Sitzungs-, Anwendungs- und Cache-Daten eines InProc-Sitzungsstatus verloren gehen.

    
Buggieboy 18.03.2010 17:31
quelle
0

Die AppDomain wird entladen, nachdem die Anfrage beendet wurde.

    
SLaks 18.03.2010 17:32
quelle

Tags und Links