Comparaison des accélérateurs pour PHP

Qu'est ce qu'un accélérateur ?

PHP est un langage interprété et comme beacoup de langage de script, l'éxécution d'un script se déroule de la manière suivante :

  1. chargement du fichier source ;
  2. interprétation du fichier dans un langage intermédiaire : l'opcode ;
  3. éxécution de ce code.

L'accélérateur va stocker le résultat de la deuxième étape soit sur le disque, soit en mémoire pour éviter d'avoir à refaire les deux premières étapes et ainsi gagner un temps précieux. Les accélérateurs sont aussi appelés “solutions de cache d'opcode”. Ils sont particulièrement conseillés sur les sites à fort traffic ou sur les applications PHP complexes. eZ Systems le recommande particulièrement lors de l'utilisation d' eZ publish.

Les principaux accélérateurs open source sont :

APC est développé par certains développeurs du moteur de PHP et devrait être intégré au futur PHP6.

Résultats

Au niveau des performances pures, APC et eAccelerator sont très proches avec un très léger avantage pour APC. Mais eAccelerator est bien plus performant lorsque le code PHP est mis à jour et donc lorsqu'il faut aussi mettre à jour le cache d'opcode.

Méthodologie, détails et résultats complets : Benchmarking PHP accelerators (en)