Articles from Le blog technique de                  Laurent BessonAccélérer l’affichage de vos pages PHP aveceAccelerator ...
eaccelerator.shm_only="0"      eaccelerator.compress="1"      eaccelerator.compress_level="9"Vérifiez la bonne intégration...
Code Source      # sysctl -pVoilà…Ajout du 20-08-2011Si vous désirez -voir comment se comporte eAccelerator, mettez ceci d...
Accélérez bien !Pas trop, attention aux radars en période estivale !Je vous conseille par ailleurs de jeter un œil à la pa...
Share on Diasp.org Partager :
Prochain SlideShare
Chargement dans…5
×

Le blog technique de laurent besson(1)

265 vues

Publié le

Publié dans : Actualités & Politique
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Le blog technique de laurent besson(1)

  1. 1. Articles from Le blog technique de Laurent BessonAccélérer l’affichage de vos pages PHP aveceAccelerator sous Debian Squeeze2011-08-18 10:08:59 admin-: Modifié le 20-08-2011 :-IntroductionNous avons tous connu les affres de l’affichage de certaines pages plus lent que ceque l’on pourrait s’y attendre ! En effet certaines pages sont délivrées par PHP etdemandent quelques requêtes SQL… l’affichage est lent. Pourtant cette pagedepuis sa création n’a pas changée… alors ?Plusieurs solutions sont à votre portée !Nous allons voir une solution qui consiste à installer : eAccelerator.Installation de eAcceleratorIl faut aller télécharger l’archive eaccelerator :http://sourceforge.net/projects/eaccelerator/files/eaccelerator/eAccelerator%200.9.6.1/eaccelerator-0.9.6.1.zipLà cela demande un peu de manipulation et d’attention.Il faut installer deux paquets supplémentaires : apt-get install php5-dev checkinstallIl faut dés-archiver ce fichier : unzip eaccelerator-0.9.6.1.zipIl faut se rendre dans le répertoire ainsi créé : cd eaccelerator-0.9.6.1Puis tapez les commandes suivantes : Code Source # checkinstallInstallez le paquet créé : Code Source # dpkg -i eaccelerator_0.9.6.1-1_i386.deb # mkdir /var/cache/eaccelerator # chown www-data: /var/cache/eacceleratorCréez un fichier :/etc/php5/conf.d/zend.ini Code Source zend_extension="/usr/lib/php5/XXXXXXX/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"
  2. 2. eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"Vérifiez la bonne intégration de eAccelerator à PHP : Code Source # php -v PHP 5.3.3-7+squeeze3 with Suhosin-Patch (cli) (built: Jun 28 2011 13:13:26) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbHVous pouvez redémarrer apache : service apache2 restartVous devriez ressentir une certaine augmentation de vitesse d’affichage…Souci rencontré : limite de la mémoire partagée(shmmax)Attention tout de même, la valeur de » eaccelerator.shm_size = 16″ doit êtreinférieure ou égale à la valeur indiquée par : Code Source # cat /proc/sys/kernel/shmmaxSinon toute les pages envoyées par apache seront inaccessibles !Deux méthodes peuvent-être utilisées afin de mettre en conformité ces deuxvariables :- echo- sysctlAvec la commande : echo « $valeur » > /proc/sys/kernel/shmmaxVous indiquez que la mémoire partagée utilise telle ou telle valeur. Initialement lataille indiquée pour la mémoire partagée était de « 33554432″ soit 32Mo.Désirant indiquer que pour eAccelerator nous pouvions utiliser 64Mo je me suisretrouvé avec des page lors de leur consultation en « page réinitialisée » !Ainsi il faut augmenter la mémoire partagée possible : 64Mo = 67108864 o, je vaisdonc mettre 128Mo soit le double !avec un : Code Source # echo "134217728" > /proc/sys/kernel/shmmaxMais si votre serveur redémarre cette valeur sera perdue…J’ai donc choisit d’éditer le fichier : /etc/sysctl.confet de placer les instructions suivantes : Code Source kernel.shmall = 134217728 kernel.shmmax = 134217728Puis j’ai appliqué les changements :
  3. 3. Code Source # sysctl -pVoilà…Ajout du 20-08-2011Si vous désirez -voir comment se comporte eAccelerator, mettez ceci dans/etc/php5/conf.d/zend.ini Code Source [eaccelerator] zend_extension ="/usr/lib/php5/20090626+lfs/eaccelerator.so" eaccelerator.shm_size ="64" eaccelerator.cache_dir ="/var/cache/eaccelerator" eaccelerator.enable ="1" eaccelerator.optimizer ="1" eaccelerator.check_mtime ="1" eaccelerator.debug ="1" 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" eaccelerator.log_file = "/var/log/apache2/eaccelerator.log" eaccelerator.allowed_admin_path = "/var/www/eaccelerator/"Cela vous permettra de suivre les hit et la mise en cache par eAccelerator !Sinon pour suivre le cache de eAccelerator une page est présente dans le répertoire: control.phpNous allons créer un répertoire accueillant cette page : Code Source mkdir /var/www/eaccelerator chmod 777 /var/www/eaccelerator cp control.php /var/www/eacceleratorIl faut modifier le fichier afin de changer l’accès à cette page : Code Source $pw = "xxxxxxxxxxxxxxxxxxxx";On obtient en se rendant sur la page :
  4. 4. Accélérez bien !Pas trop, attention aux radars en période estivale !Je vous conseille par ailleurs de jeter un œil à la page :http://blog-dev.net/technique/serveurs/monter-une-partition-en-memoire-avec-tmpfs/003Cela vous donnera peut-être l’idée de monter en RAM /var/cache/eaccelerator ?Mettre en RAM le cache de eAcceleratorLe répertoire du cache de eAccelerator est /var/cache/eaccelerator et je le déclaredans fstab comme répertoire tmpfsce qui donne :Code Sourcetmpfs /var/cache/eaccelerator/ tmpfs size=64m 0 0Faites unCode Sourcemount -aou unCode Sourcemount -o remount -aou un reboot… Et voilà ! ———————————————Webographie : http://www.debianiste.org/?post/2011/03/Installation-d-eAccelerator-avec- Apache-sous-Debian http://docs.postgresqlfr.org/7.4/kernel-resources.html
  5. 5. Share on Diasp.org Partager :

×