Si vous n’êtes pas convaincu qu’un accélérateur PHP va vous sauver la vie, prenez donc le temps de lire cet excellent article sur l’amélioration des performances de TYPO3 [
1].
J’utilise eAccelerator depuis quelques années maintenant et je peux vous assurer qu’il améliore les performances d’environ 4x pour PHP5.
Après avoir configuré votre site pour qu’un maximum de pages (si ce n’est toutes) soient stockées en cache, il est temps de passer aux choses sérieuses…
Téléchargeons la dernière version de eAccelerator en tapant ceci dans un shell :
VERSION=$(wget -qhttp://bart.eaccelerator.net/source/ -O - \
| grep ’\[DIR\]’ \
| sed ’s/^.*\/">\([0-9.]*\).*/\1/’ \
| sort -r \
| head -n1)
wgethttp://bart.eaccelerator.net/source/$VERSION/eaccelerator-$VERSION.tar.bz2
Compilons maintenant eAccelerator (toutes les informations sont disponibles sur [
2]) :
$ tar xjf eaccelerator-$VERSION.tar.bz2
$ cd eaccelerator-$VERSION
$ phpize
$ ./configure
$ make
$ sudo make install
Il ne reste plus qu’à l’activer en créant le fichier /etc/php5/apache2/conf.d/eaccelerator.ini :
extension=eaccelerator.so
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/cache/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
Créons le répertoire de cache et redémarrons Apache :
$ sudo mkdir /var/cache/eaccelerator
$ sudo chown www-data:www-data /var/cache/eaccelerator
$ sudo chmod 0644 /var/cache/eaccelerator
$ sudo apache2ctl graceful
Tout cela est bien beau, mais nous devrions également faire en sorte que personne ne puisse activer la génération d’une page sans utiliser le cache. C’est d’ailleurs un risque de déni de service (ou DoS). Pour cela, il suffit de rajouter une ligne à notre fichier localconf.php :
$TYPO3_CONF_VARS['FE']['disableNoCacheParameter'] = '1';
Pour améliorer encore les performances, au niveau de TYPO3 cette fois, je vous conseille vivement la lecture de l’article de Michiel Roos [
3].
