Catégories
Informatique

apache2-mpm-worker ou apache2-mpm-prefork?

Apache

Le serveur web Apache 2 est disponible avec deux modules, on ne peut pas installer les deux à la fois ( mpm-worker ou mpm-prefork ) mais il faut en choisir un. Alors lequel?

Tout d’abord que veut dire MPM ? Cela signifie Multi-Processing Modules.

Le module mpm-worker est le plus pratique pour l’aspect « scalable » tandis que le « prefork » a l’avantage d’être très stable. Dans tous les cas on ne peut en utiliser qu’un à la fois.

Comment choisir?

Par défaut les dernières versions sont compilées avec mpm-prefork. Celle-ci peut utiliser une extension PHP5 tandis que mpm-worker doit faire appel à FastCGI.

Après des essais sur nos serveurs, apache2-mpm-worker est plus compliqué à adapter (quelques soucis sur les virtualhosts etc) mais consomme moins de mémoire vive que son « concurrent ». Il est aussi plus stable que prefork qui mange progressivement la RAM quand il est combiné avec PHP et MySQL.

Si vous n’avez pas les compétences techniques nécessaires à la modification avancée de vos VirtualHosts et des fichiers de configuration de votre serveur, il est plus prudent de ne rien changer ou de se faire aider !

Sur une machine très puissante avec plus de 3 Go de RAM, le module prefork est meilleur (pour le contenu statique) tandis que pour les gens dont les ressources système sont à surveiller, le module worker tiendra mieux la charge car une requête qui plante n’arrête pas les autres.

Comment installer Apache 2 avec le module mpm-worker?

Pour l’installer vous devez taper ceci dans votre terminal :
apt-get install apache2 apache2-mpm-worker libapache2-mod-fcgid et bien sûr pour le PHP il faudra rajouter ceci : apt-get install php5-cgi php5-curl php5-gd php5-ldap php5-mysql php5-mysqli php5-sqlite php5-xsl

Il faut ensuite ajouter les lignes suivantes à votre fichier de configuration Apache (apache2.conf) :
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
Options ExecCGI

Informations complémentaires :
Documentation Apache – les MPM
Document concernant l’utilisation avec Ubuntu
Quelques infos sur l’installation du mode FCGID

Une réponse sur « apache2-mpm-worker ou apache2-mpm-prefork? »

Laisser un commentaire