mpm_winnt Module multi-processus optimisé pour Windows NT. MPM mpm_winnt.c mpm_winnt_module

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 :

Utiliser le serveur HTTP Apache sous Microsoft Windows AcceptFilter CoreDumpDirectory PidFile Listen ListenBacklog MaxConnectionsPerChild MaxMemFree ScoreBoardFile ReceiveBufferSize SendBufferSize ThreadLimit ThreadsPerChild ThreadStackSize