Serveur Apache HTTP Version 2.4
Description: | Module multi-processus optimisé pour Windows NT. |
---|---|
Statut: | MPM |
Identificateur de Module: | mpm_winnt_module |
Fichier Source: | mpm_winnt.c |
Ce module multi-processus (MPM) est le module par défaut pour les systèmes d'exploitation de style Windows NT. Il consiste en un processus de contrôle unique qui lance un processus enfant unique, ce dernier créant à son tour des threads pour traiter les requêtes.
La directive ThreadsPerChild
définit le
nombre maximal de connexions clientes simultanées.
Ce MPM utilise par défaut les APIs Windows avancées pour accepter les nouvelles connexions des clients. Avec certaines configurations, des produits tiers peuvent interférer avec cette implémentation, et provoquer l'enregistrement des messages suivants dans les journaux du serveur :
Child: Encountered too many AcceptEx faults accepting client connections.
winnt_mpm: falling back to 'AcceptFilter none'.
Le MPM se rabat sur une implémentation plus sûre, mais certaines
requêtes n'ont pas été traitées correctement. Pour éviter cette
erreur, définissez la directive AcceptFilter
à none
.
AcceptFilter none
Avec les versions 2.0 et 2.2 d'Apache httpd, c'est la directive
Win32DisableAcceptEx
qui était utilisée à cet
effet.
Le MPM WinNT diffère des autres MPMs Unix comme worker et event à bien des égards :
MaxConnectionsPerChild
est
atteinte, les requêtes en cours de traitement par ce processus en
cours d'arrêt n'ont que TimeOut
secondes pour s'exécuter avant
l'arrêt du processus. Les autres types de redémarrage ou arrêt ne
sont pas implémentés.MaxConnectionsPerChild
, tout
changement survenu entre temps dans la configuration sera alors
pris en compte dans le processus enfant, et parent et enfant
utiliseront une configuration différente. Si des modifications
planifiées de la configuration ont été partiellement effectuées,
et si la configuration courante n'est pas interprétable, le
processus enfant de remplacement ne pourra pas démarrer, et le
serveur s'arrêtera. En conséquence, toute modification des
fichiers de configuration doit être accompagnée d'un redémarrage
du serveur.monitor
et fatal_exception
ne sont pas encore implémentés.AcceptFilter
est
implémentée par le MPM et fournit un type de contrôle différent
sur le traitement des nouvelles connexions (Voir la documentation
de la directive AcceptFilter
pour plus de détails).