web-dev-qa-db-fra.com

Comment diagnostiquer IIS problème d'erreur de communication fatale

J'ai un client qui utilise IIS et une application que nous avons développée dans Asp.NET 1.1. Lundi, l'erreur a été enregistrée 4 fois de suite «Un processus desservant le pool d'applications 'xxxx' a subi une erreur de communication fatale avec le service de publication World Wide Web. L'identifiant du processus était "aaaa". Le champ de données contient le numéro d'erreur. ”Est apparu.

Une idée sur la façon de diagnostiquer cela? Le lien seulement que j'ai trouvé parle de l'installation d'outils de débogage de bas niveau, mais avant de procéder à ce type d'analyse de bas niveau, je saurais si quelqu'un a une meilleure idée ou une alternative appropriée.

Le problème (d'après ce que je peux voir) est quelque chose dans l'environnement client, car la même application est installée sur d'autres sites clients sur au moins 20 ou 30 serveurs différents et le problème ne se produit pas.

Cordialement

Massimo

14
massimogentilini

Si le même problème se présentait sur IIS 7, peu de rapports avaient fonctionné, à l'exception d'un rapport très long, qui n'a jamais fonctionné sous IIS7 (cela convenait bien sur un serveur de faible spécification).

sur IIS7 dans le paramètre avancé du pool d’applications I définissez "Activer l’application 32 bits" sur true et tout a bien fonctionné

5
Moji

Je reçois la même erreur, voici quelques détails supplémentaires:

en cours d'exécution: Windows Server 2003, IIS 6.0/ASP 3.0, 2,13 GHz, 1 Go de RAM

Mon site Web est en version bêta et je n’ai donc que très peu de visiteurs.

Selon l'observateur d'événements, cet avertissement me parvient 3 fois toutes les 3 minutes, puis il s'arrête quelques heures.

Alors parfois, j'obtiens l'erreur:

Un processus desservant le pool d'applications 'DefaultAppPool' s'est arrêté de manière inattendue. L'identifiant du processus était '3900'. Le code de sortie du processus était "0x800703e9".

qui suivent par:

Le pool d'applications 'DefaultAppPool' est automatiquement désactivé en raison d'une série d'échecs dans les processus desservant ce pool d'applications.

Ce qui provoque ensuite un message 'Service non disponible' lors de la navigation sur le site.

après avoir lu trop d'articles sur ce problème, j'ai suivi les étapes suivantes:

  1. J'ai lu qu'il pourrait s'agir d'un droit d'accès au registre, j'ai donc installé un moniteur et retracé toutes les erreurs d'accès refusé au W3SVC et accordé une permission.

  2. J'ai lu que l'erreur 0x800703e9 signifie un débordement de pile qui provoque un crash de w3wp.exe et que je devrais installer un outil de débogage et essayer d'obtenir un vidage de la mémoire. Je l'ai fait mais je n'ai pas eu de vidage. J'ai donc installé un nouvel outil de débogage, mais je n'ai pas encore eu d'accident.

Mon site Web effectue une extraction de données qui garde le serveur occupé.

Conclusion:

  1. Je ne sais pas ce qui se passe là-bas ... mais je sais que ma machine serveur ralentit considérablement les ressources. Je vais donc la mettre à niveau et la réinstaller. Je suis certaine que cela résoudra le problème. ..

  2. Le problème se produit tout le temps, même lorsque mon code .net est inactif. Il s’agit donc d’un problème lié au serveur et non à mon code.

  3. Je pense que le premier warnning "Un processus servant un pool d'applications ..." se produit de temps en temps, et de temps en temps, il provoque le redémarrage du pool d'applications. Par conséquent, l'attachement d'un débogueur n'aide pas - le processus continue de redémarrer et le débogueur n'est plus efficace ... Je pense que l'erreur 0x800703e9 (qui cause le service indisponible) peut se produire lorsque le pool d'applications redémarre, je suppose qu'il a besoin de beaucoup de ressources et que ma machine est trop lente il obtient le 0x800703e9 ... comme dit précédemment, il s’agit d’un flux de pile, mais je pense que cela est dû à un manque de ressources et non à une récursion sans fin.

  4. Je pense que le «droit d'accès au registre», revendiqué par Microsoft, est un non-sens, mais je n'ai pas reçu le «service indisponible» car cela pourrait aider (je pensais toujours recevoir l'avertisseur «Un processus servant pool d'applications ... ").

J'espère que cela aidera quelqu'un ...

3
elia

J'ai eu le même problème quand un site Web a été déployé sur le serveur Web d'un client. Cet article du support technique Microsoft dit:

"Ce problème peut se produire si le compte NT AUTHORITY\NETWORK SERVICE ne dispose pas des autorisations pour les clés de registre requises."

Et la résolution est la suivante: "définissez les autorisations sur les clés de registre requises, puis redémarrez IIS 6.0."

L'article lié contient les étapes pour le faire.

2
DOK

Je suis sûr que vous le savez déjà, mais le pool d'applications ne contient que des applications 1.1, n'est-ce pas? Je ne me souviens pas de l'erreur que vous obtenez lorsque le pool meurt en essayant de mélanger des frameworks (quelque chose comme Server indisponible), mais c'est plus courant que je ne le pensais à l'état sauvage, donc je vérifierais.

Bien que ce ne soit probablement pas le cas, c'est un endroit pour commencer.

Edit: Cet article KB comportait également le message d'erreur que vous avez décrit concernant les autorisations de registre. Quelle version de IIS le client est-il en cours d'exécution?

1
Quintin Robinson

Une autre raison populaire (comme dans mon cas) - l'un des journaux de Windows est plein.

0
Alsin