Anwendungspools starten nicht nach iisreset

7

Bevor ich anfange, weiß ich, dass die Verwendung von iisreset als schlechte Übung betrachtet wird, aber das sollte sowieso nicht passieren.

Was wir haben:

  • Mehrere Computer mit IIS6 unter Windows Server 2003 R2 (64 und 32 Bit)

  • Mehrere WCF-Webdienste (.NET-Laufzeitumgebung 2.0), die in verschiedenen Anwendungen mit jeweils eigenem Anwendungspool implementiert sind, wobei jeder Anwendungspool unter einem anderen Windows-Konto ausgeführt wird.

Was passiert:

  • Alle appPools werden gestartet, alle Dienste sind betriebsbereit
  • IISReset wird ausgeführt (oder der Computer wird neu gestartet)
  • IIS wird wieder angezeigt, aber nicht alle Anwendungspools werden ordnungsgemäß gestartet. Manchmal kommen sie alle wieder zurück, manchmal starten ein oder mehrere Pools nicht. Sie können jedoch manuell gestartet werden.

Ist dies ein "normales" Verhalten und sollte ich nur Iisreset vermeiden oder machen wir etwas falsch in unserem .NET-Code?

    
thijs 29.10.2008, 12:25
quelle

5 Antworten

10

Die Anwendungspools sollten auf einem iisreset neu gestartet werden, sie werden jedoch außerhalb von iis (in COM +) ausgeführt, um die Zuverlässigkeit zu gewährleisten. Dies bedeutet, dass sie möglicherweise nicht zurückkommen, wenn die Anwendung sich schlecht benimmt, aber IIS und die anderen Anwendungen werden (sollten) zurückkommen. Also ja, das ist "normal".

P.S. Ich würde mich auch gern als stolp Benutzer von iisreset "out" fühlen. Schlechte Praxis? Bah! ; D

    
Booji Boy 29.10.2008, 12:33
quelle
5

IIS startet ASP.NET-Worker-Prozesse (w3wp.exe) nicht sofort, bis die erste Anfrage eingeht. Wenn Sie "nicht gestartet" sagen, bedeutet dies, dass Sie versuchen, auf einige WCF-Webdienste zuzugreifen (nach iisreset) und Sie erhalten einen Service nicht verfügbar Fehler, weil der AppPool nicht gestartet werden kann? Sehen Sie irgendwelche IIS W3SVC bezogenen Einträge in den Ereignisprotokollen?

Wenn es welche gibt, können sie Ihnen vielleicht sagen, warum sie nicht anfangen können; Schreib sie hier hoch.

    
icelava 29.10.2008 12:54
quelle
3

Grund:

IIS startet die ASP.NET-Arbeitsprozesse (w3wp.exe) nicht sofort, bis die erste Anfrage eingeht. Wenn "nicht gestartet" heißt, bedeutet dies, dass Sie versuchen, auf einige WCF-Webdienste (nach iisreset) aufgrund eines Objekts zuzugreifen hat Speicherplatz im Speicher gehalten, und Sie erhalten einen Dienst nicht verfügbar Fehler, da der AppPool nicht gestartet werden kann.

Workaround:

Erstellen Sie Batch-Datei mit folgenden Befehlen & amp; Planen Sie es ein.

net stop 23svc

net stop msftpsvc

net stop smtpsvc

net stop PleskControlPanel

net stop HTTPFilter

iisreset / neustart

net starten w3svc

net Start msftpsvc

net starten smtpsvc

net starten PleskControlPanel

net Starten Sie HTTPFilter

    
Kalpesh D. Sampat 28.01.2010 05:21
quelle
3

Ähnliches Problem - nach dem Neustart von IIS wurde DefaultAppPool gestoppt.

In Anwendungsereignisprotokollen wurde ein Fehler gefunden:

  

Windows kann Sie nicht anmelden, weil Ihr Profil nicht geladen werden kann. Überprüfen Sie, ob Sie mit dem Netzwerk verbunden sind oder ob Ihr Netzwerk ordnungsgemäß funktioniert. Wenden Sie sich an Ihren Netzwerkadministrator, wenn das Problem weiterhin besteht.
DETAIL - Zugriff verweigert.

Behoben, indem die Option Erweiterte Einstellungen Benutzerprofil laden auf Falsch gesetzt wurde.

Ich hoffe, es könnte nützlich sein.

    
Fragment 09.07.2015 05:25
quelle
0

In einer früheren Supportrolle habe ich mehrere IIS-Server verwaltet, auf denen alle Arten von .NET-Fehlern ausgeführt wurden. Wenn ein AppPool nicht gestartet werden konnte, war es normalerweise ein ungültiger Anmeldedatensatz.

    
spoulson 29.10.2008 12:57
quelle