2010-12-09 5 views
2

Mon application s'exécute dans un environnement d'hébergement partagé. J'ai un App Pool dédié pour mon application. J'ai fait quelques tests avec les premières visites et les performances de précompilation et j'ai suivi quand mon application a démarré et s'est arrêtée.Ouverture, fermeture et recyclage du pool d'applications du journal IIS

Dans mon fichier Global.asax, j'ai un code de connexion dans Application_Start et Application_End. Je peux voir de mes journaux généralement lorsque l'application est inactive et s'arrête, puis quelqu'un visite et il commence à sauvegarder. Mais, je vois aussi des cas où un arrêt est enregistré puis suivi d'un autre arrêt environ 13 minutes plus tard; sans démarrage au milieu.

Je vois également des exemples où il y a deux démarrages dans une rangée. Je suppose que cela pourrait être un recyclage, mais pourquoi n'y aurait-il pas une entrée de journal d'arrêt? Ce que j'aimerais vraiment savoir s'il y a un meilleur moyen de savoir quand mon application démarre, quand elle s'arrête et si elle est arrêtée en raison d'un pool inactif, ou d'un recyclage. Je n'ai pas accès au journal des événements Windows, donc je dois le faire depuis mon application si possible.

Répondre

3

Application_Start et Application_End ne doivent être appelés qu'une seule fois par durée de vie dans votre application, MSDN confirms this.

Sans connaître votre environnement d'hébergement, il est possible que votre hébergeur exécute votre site Web sur plusieurs pools de travailleurs ou instances IIS. Votre pool d'applications peut également se bloquer de manière inattendue en raison d'autres applications dans le pool.

Sans accès au journal des événements ou autre chose qu'un panneau de contrôle de l'hôte Web de base, la meilleure façon de vous connecter est ce que vous faites maintenant, en utilisant Global.ASAX

Questions connexes