web-dev-qa-db-fra.com

Différence entre «Démarrer le pool d'applications immédiatement» et le mode de démarrage AlwaysRunning

Dans IIS Manager, un pool d'applications comporte une case à cocher "Démarrer immédiatement le pool d'applications" dans la boîte de dialogue des paramètres de base et un paramètre avancé appelé "Mode de démarrage" qui peut être défini sur "OnDemand" ou " Toujours en cours d'exécution".

Quelle est la différence entre ces paramètres?

21
Ergwun

A eu la même question que l'affiche originale mais n'a pas pu trouver une réponse concise, voici l'analyse de mes recherches.


Pool d'applications! = Processus de travail (w3wp.exe)

  • Typiquement nous voyons une seule instance w3wp.exe en cours d'exécution pour chaque pool d'applications mais techniquement nous pouvons configurer un jardin Web avec plusieurs instances w3wp.exe en cours d'exécution.
    Les jardins Web ... sont-ils bons ou mauvais ou quoi?
  • Un processus de travail s'exécute dans le contexte d'un pool d'applications unique.


Démarrer immédiatement le pool d'applications = démarrage automatique ou manuel
Paramètres de base ...

  • Activé
    IIS démarre automatiquement le pool d'applications.
  • Désactivé
    Quelqu'un doit démarrer manuellement le pool d'applications.


Mode de démarrage = Mode de démarrage du processus de travail: immédiatement ou sur demande
Paramètres avancés ...

  • AlwaysRunning
    Si le pool d'applications est en cours d'exécution, démarrez immédiatement le processus w3wp.exe.
  • OnDemand
    Si le pool d'applications est en cours d'exécution, démarrez le processus w3wp.exe en cas de demande d'application entrante.

Notes supplémentaires

  • IISRESET/stop
    Arrêtez IIS, les pools d'applications et les processus de travail (instances w3wp.exe).
  • IISRESET/start
    Démarrer IIS et les paramètres de configuration ci-dessus détermineront le démarrage du ou des pools d'applications et des processus de travail (w3wp.exe).

  • IIS Manager Arrêter l'action de l'interface graphique du serveur Web
    Arrêtez le serveur Web de gérer les demandes entrantes mais n'arrêtez pas le (s) pool (s) d'applications ou processus (s) w3wp.exe.

  • IIS Manager Démarrer l'action de l'interface graphique du serveur Web
    Démarrez le serveur Web pour gérer les demandes entrantes mais ne démarrera pas les pools d'applications ou les processus w3wp.exe.
    Action de menu pour démarrer/arrêter un serveur Web

  • Action de l'interface graphique d'arrêt du pool d'applications du gestionnaire IIS
    Arrêtez le processus w3wp.exe.

  • Action de l'interface graphique de démarrage du pool d'applications du gestionnaire IIS
    AlwaysRunning vs. OnDemand déterminera le démarrage du processus w3wp.exe.
    Action de menu pour démarrer/arrêter un pool d'applications
10
Jeffrey Hyson

Il semble que "Démarrer le pool d'applications immédiatement" contrôle si le pool d'applications est "démarré" au démarrage du service de publication World Wide Web. Mais un pool d'applications "démarré" n'est pas nécessairement en cours d'exécution (ce qui signifie qu'il peut ne pas y avoir de processus w3wp).

Si un pool d'applications n'est pas "démarré", vous obtiendrez un 503 lorsque vous accédez à un site qui utilise ce pool d'applications.

Si un pool d'applications est "démarré", un processus w3wp répondra à votre demande. "Toujours en cours d'exécution" signifie que lorsque le pool d'applications est démarré, un processus w3wp démarre. OnDemand signifie que le processus w3wp tourne lorsque vous accédez pour la première fois à un site Web associé à l'application (il y a un délai au démarrage de w3wp).

6
mhenry1384

Un peu tard pour répondre mais j'ajouterai mes conclusions en regardant autour de moi pour trouver une réponse à cette même question.

"OnDemand": IIS lancera le processus de travail lors de la première demande d'application Web. "AlwaysRunning": IIS lance le processus de travail pour le pool d'applications comme dès que IIS est démarré OR lorsque le pool d'applications est créé.

4
jforjimmy

Par IIS 8 Quoi de neuf - Paramètres du pool d'applications :

Mode de démarrage

Le démarrage de quelques applications Web prend beaucoup de temps. IIS par défaut ne lance un processus de travail que lorsque la première demande de l'application Web est reçue. Ainsi, pour les applications Web qui nécessitent un temps d'initialisation plus long, les utilisateurs peuvent voir des réponses lentes.

Pour de telles applications, il est judicieux de lancer le processus de travail dès que IIS est démarré. Les pools d'applications ont un paramètre startMode qui, lorsqu'il est défini sur AlwaysRunning, lance le processus de travail du pool d'applications en tant que dès que IIS est démarré.

IIS 8 vous fournit ce paramètre dans l'interface utilisateur des paramètres du pool d'applications.

1
Dave Black