- Plan du Site | Contact |
|
IntroductionAvec un langage de script comme PHP, plusieurs solutions d'optimisations sont possibles : optimisation de apache, optimisation de PHP et mise en cache des pages. Ces différentes optimisations permettent d'obtenir un gain de performance pouvant aller jusqu'à plus de 50% selon les cas. Il est même envisageable - si vous avez la main sur votre serveur - de recompiler votre installation d'apache et/ou de PHP...
PHP dispose de plusieurs niveaux de cache et d'optimisation. Bien sûr, rien ne remplacera la qualité initiale du code ! Là encore, des outils comme xdebug peuvent nous y aider, mais là n'est pas l'objet de cet article.
Quand on parle de cache avec PHP, il est utile de distinguer le niveau de cache auquel on fait référence. On pourra parler de : - cache d'opcode (accélération de code) - cache en mémoire vive - cache en fichiers
Dans cette section, on parlera de la première solution à mettre en place lors de l'optimisation d'un installation de PHP qui est le cache d'opcode. Pourquoi la première ? Car c'est celle qui nous apportera le gain de performances le plus important avec un minimum d'efforts.
Le Cache d'opcodeCe que l'on appelle l'opcode est un état intermédiaire du code PHP qui se situe entre le script initial et l'exécutable car avant de lancer l'exécution proprement dite, PHP transforme le script en ... opcode !
Un système de cache d'opcode se charge de garder en mémoire l'opcode généré et permet de s'affranchir de cette coûteuse opération de transformation.
Cependant, ce type de cache nécessite une modification interne de PHP. Il faut donc avoir accès à la machine - ce qui sera impossible sur un hébergement mutualisé. Par contre, il n'y a aucun besoin de modifier les pages de votre site et le gain de performances est tout à fait notable !
SolutionsLa liste de solutions présentée ci-dessous n'est pas exhaustive, mais constitue déjà un bon point de départ pour vos recherches.
Zend Acceleratorwww.zend.com/store/products/zend-accelerator.php
APC (Alternative PHP Cache)
eAccelerator
Installation$ sudo apt-get update $ sudo apt-get install php5-dev apache-dev php5-cli php-pear
NB : Si vous utilisez php4, il faut prendre les paquets php4-cli php4-pear
L'utilitaire de gestion de modules d'Apache2 s'appelle apxs2. APC va chercher par défaut la version Apache1, on fait donc pointer un lien symbolique vers la bonne version : $ sudo ln -s /usr/bin/apxs2 /usr/bin/apxs
On peut maintenant lancer l'installation d'APC via PECL : $ sudo pecl install apc
On rajoute maintenant la ligne suivante dans /etc/php5/apache2/php.ini : extension=apc.so
Il ne reste plus qu'a redemarrer apache2 pour bénéficier de cette optimisation du cache d'opcode !
NoteSi cet article vous a été de quelque secours, n'hésitez pas à laisser un message sur notre Blog / FAQ, il est là pour cela ! Merci. |
|
||||||
Services | Solutions | Formations | Portfolio | Accès Client |