Quelles sont les causes du recyclage d'un pool d'applications dans IIS?

j'ai été à la recherche d'informations sur ce en vain. Le contexte pour lequel j'en ai besoin est une autre question que j'ai posée ici . Plus précisément, la création/mise à jour/suppression de fichiers dans App_Data entraîne-t-elle un recyclage de pool?

si quelqu'un pouvait fournir une liste détaillée des causes d'un recyclage, ce serait génial.

mise à jour : comme deux utilisateurs l'ont déjà remarqué, je serais également heureux d'une réponse spécifier les raisons du recyclage de L'Appdomaine seulement et non de l'ensemble de la piscine.

65
demandé sur Community 2008-11-19 17:55:39

6 réponses

deux effets différents - le processus AppPool est l'hôte pour des appdomains potentiellement multiples. Typiquement cela peut être recyclé par un certain nombre d'effets par exemple le temps - Toutes les 'n' heures, le manque de requêtes, l'utilisation de la mémoire, etc. Configuré dans le Gestionnaire de configuration IIS.

AppDomain-l'instance hébergée de votre application root, peut être traitée plus fréquemment sans affecter D'autres AppDomains dans L'AppPool. Tess' post sur le domaine d'application de recyclage est assez perspicace

http://blogs.msdn.com/tess/archive/2006/08/02/asp-net-case-study-lost-session-variables-and-appdomain-recycles.aspx

vous écrivez dans un dossier surveillé pour recompilation - cela déclenchera la récréation appdomain à un moment donné.

le journal des événements vous aidera à déterminer la cause à l'origine du recyclage.

30
répondu stephbu 2009-01-26 20:24:43

L'article que vous avez aimé dans l'autre poste a en fait fait un très bon travail de ce.

Recyclage Immédiat

  • Web.modification de la configuration
  • de la Machine.modification de la configuration
  • Global.asax changements
  • changement de répertoire Bin
  • changements App_Code

Recyclage Différé

peut se produire avec de multiples modifications dans d'autres endroits, typiquement, Je l'ai seulement remarqué avec des changements à .aspx ou .cs/.vb fichiers. Ajouter du texte temporaire, csv ou d'autres fichiers n'a pas entraîné de problèmes pour moi.

NOTE: Ce sont tous des recyclages du domaine app, et non des recyclages réels de la piscine. En général, le POOL d'applications ne recycle que sur la base des paramètres de L'IIS (nombre de requêtes, limite de mémoire, temps mort ou redémarrage programmé).

36
répondu Mitchel Sellers 2008-11-19 15:06:48

vous pourriez vouloir activer les journaux D'événements complets D'AppPool Recycle:

cscript adsutil.vbs Set w3svc/AppPools/DefaultAppPool/LogEventOnRecycle 255 

vous pourriez aussi vouloir jeter un oeil à cet article de Scott Guthrie blog: http://weblogs.asp.net/scottgu/archive/2005/12/14/433194.aspx qui montre comment écrire du code dans Global.ASAX pour enregistrer la cause réelle d'une Application.Fin de l'événement.

cela nous a été extrêmement utile pour diagnostiquer plusieurs problèmes loufoques - l'un en particulier a été une application qui écrivait des fichiers journaux dans le répertoire wwwroot - trop de modifications de fichiers résultant en un recyclage...

26
répondu Christopher G. Lewis 2008-11-20 16:40:45

cela peut se produire sur une base quotidienne basée sur les préférences, ou lorsque la mémoire virtuelle max pour le processus a été dépassée.

2
répondu Ben Scheirman 2008-11-19 14:57:37

il s'agit d'un paramètre que vous pouvez manipuler pour recycler l'application en fonction du nombre de minutes qu'elle a passées, ou du nombre de requêtes qu'elle a traitées.

il sera également recycler sur le web.les modifications de configuration et autres choses qui ont été postées ici.

une réinitialisation IIS fera aussi l'affaire, tout comme l'arrêt/le démarrage des services.

1
répondu Milner 2008-11-19 16:20:34

w3wp.exe s'est égaré. Cela a causé Application_Start d'être appelé dans Global.asax .

Pour le savoir, j'ai ouvert Observateur d'Événements .

Sous Journaux Windows je suis allé à Application .

j'ai vu une erreur D'Application :

Faulting application name: w3wp.exe, version: 10.0.16299.15, time stamp: 0x0aeb5595
Faulting module name: KERNELBASE.dll, version: 10.0.16299.334, time stamp: 0x6369e29f
Exception code: 0xe0434352
Fault offset: 0x0000000000014008
Faulting process id: 0x2900
Faulting application start time: 0x01d43b16f726cbb9
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe
Faulting module path: C:\WINDOWS\System32\KERNELBASE.dll
Report Id: 998cf55d-2cd9-4b8d-9884-2110e3fd1411
Faulting package full name: 
Faulting package-relative application ID: 
0
répondu Words Like Jared 2018-08-23 19:35:27