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

Dans le Gestionnaire IIS, un pool d’applications dispose d’une case à cocher « Démarrer le pool d’applications immédiatement » dans la boîte de dialogue des paramètres de base, et d’un paramètre avancé appelé « Mode de démarrage » qui peut être défini sur « OnDemand » ou « AlwaysRunning ».

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


Source : Server Fault

J’avais la même question que l’auteur original mais je n’ai pas trouvé de réponse concise. Voici l’analyse issue de mes recherches.

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

  • Généralement, nous voyons une seule instance de w3wp.exe s’exécuter pour chaque pool d’applications, mais techniquement, nous pouvons configurer un Web Garden avec plusieurs instances de w3wp.exe.

Les Web Gardens… sont-ils bons, mauvais ou quoi ?

  • Un processus de travail s’exécute dans le contexte d’un seul pool d’applications.

Démarrer le pool d’applications immédiatement = Démarrage automatique ou manuel

Paramètres de base…

  • Activé

IIS démarrera 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édiat ou à la demande

Paramètres avancés…

  • AlwaysRunning

Si le pool d’applications est en cours d’exécution, démarrer immédiatement le processus w3wp.exe.

  • OnDemand

Si le pool d’applications est en cours d’exécution, démarrer le processus w3wp.exe lorsqu’il y a une requête applicative entrante.

Notes supplémentaires

  • IISRESET /stop

Arrête IIS, le(s) pool(s) d’applications et le(s) processus de travail (instances w3wp.exe).

IISRESET /start

Démarre IIS et les paramètres de configuration ci-dessus détermineront quand le(s) pool(s) d’applications et le(s) processus de travail (w3wp.exe) démarrent.

Action de l’interface graphique du Gestionnaire IIS « Arrêter le serveur Web »

Arrête le serveur Web pour ne plus traiter les requêtes entrantes mais n’arrête pas le(s) pool(s) d’applications ni le(s) processus w3wp.exe.

Action de l’interface graphique du Gestionnaire IIS « Démarrer le serveur Web »

Démarre le serveur Web pour traiter les requêtes entrantes mais ne démarre pas le(s) pool(s) d’applications ni le(s) processus w3wp.exe.

Action du menu pour démarrer/arrêter un serveur Web

Action de l’interface graphique du Gestionnaire IIS « Arrêter le pool d’applications »

Arrête le processus w3wp.exe.

  • Action de l’interface graphique du Gestionnaire IIS « Démarrer le pool d’applications »

AlwaysRunning vs. OnDemand déterminera quand le processus w3wp.exe démarre.

Action du menu pour démarrer/arrêter un pool d’applications