eAccelerator, qu'est ce que c'est ?

eAccelerator is a free open-source PHP accelerator, optimizer, and dynamic content cache. It increases the performance of PHP scripts by caching them in their compiled state, so that the overhead of compiling is almost completely eliminated. It also optimizes scripts to speed up their execution. eAccelerator typically reduces server load and increases the speed of your PHP code by 1-10 times.

eAccelerator va mettre en cache la forme pré-complié de PHP.

Comment installer ?

Il faut télécharger les paquet développeur

aptitude install build-essential php5-dev

Ensuite télécharger les sources sur le site : www.eaccelerator.net

cd /tmp wget http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6-rc1.tar.bz2 tar xvjf eaccelerator-0.9.6-rc1.tar.bz2 cd eaccelerator-0.9.6-rc1 phpize ./configure make make install

eAccelerator est maintenant installé. Il faut créé le fichier de configuration. Les fichiers de conf pour apache2 se situe dans /etc/php5/conf.d

nano /etc/php5/conf.d/eaccelerator.ini

et placer ces lignes dans ce fichier

extension="eaccelerator.so" eaccelerator.shm_size="16" eaccelerator.cache_dir="/var/cache/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"

Pour savoir a quoi corresponde ses lignes, référez vous au guide :

3 paramètres importants :

  • eaccelerator.shm_size : taille du cache en Mo
  • eaccelerator.cache_dir : répéertoir du cache
  • eaccelerator.enable : activer ou désactiver eAccelerator

N'oubliez pas de restart apache

/etc/init.d/apache2 restart

Comment savoir que eAccelerator est bien installé ?

créez un fichier phpinfo.

nano /var/www/info.php placer <?php phpinfo(); ?> et aller vers ce fichier sur votre navigateur.

normalement il affiche

eAccelerator activer

C'est fini ! :clapclap:

Cadeau bonus : créé une RAM disque

Ca va vite hein :D mais on peut aller encore plus vite. Et pourquoi pas mettre le cache en RAM, après tout, la RAM il y en a beaucoup maintenant. Certains serveurs montent a plusieurs giga de RAM. Mon modeste serveur possède 512Mo.

On va créé une RAM disque, c'est a dire un disque mais qui sera en RAM. Etant donné que la RAM est beaucoup beaucoup plus rapide que le disque :v:

Il faut d'abord créé un dossier.

mkdir /var/cache/cache_eaccelerator chmod -R 777 /var/cache/cache_eaccelerator

Il faut monter un disque. Or il n'existe pas. On va lui définir une taille, disons, 64Mo. Le système de fichier est tmpfs, il permet d'accéder à la RAM.

mount -t tmpfs -o size=64M tmpfs /var/cache/cache_eaccelerator

Ensuite, faire pointer le cache vers ce dossier et le tour est joué !

Ajouter une ligne dans le fstab pour qu'il se monte automatiquement au restart du serveur.

tmpfs /var/cache/cache_eaccelerator defaults,rw,size=64M 0 0

Conséquence, réduction de la charge CPU, et un site qui s'affiche beaucoup plus vite. Il faudrait faire des benchmark (test), mais ça fera l'objet d'un autre article.

Signature

Source :

note : j'ai mis le cache firefox sur une ram disque, et c'est super ! :v: