Your SlideShare is downloading. ×
Les performances sur des développements PhP
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Les performances sur des développements PhP

25,189
views

Published on

Présentation chez Neuros pour nos nAcademy des bonnes pratiques pour étudier les problématiques de performance essentillement sur des applications ou sites webs développés en PhP.

Présentation chez Neuros pour nos nAcademy des bonnes pratiques pour étudier les problématiques de performance essentillement sur des applications ou sites webs développés en PhP.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
25,189
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. PHPerfs Performances & Optimisation en PHP29 mars 2011 Nicolas DEGARDIN Afin de contribuer au respect de lenvironnement, merci de nimprimer ce document quen cas de nécessité
  • 2. Introduction à-propos Site manquant d’optimisation Site à optimiser
  • 3. Introduction performances et le web o CPU o Mémoire o Stockage o Bande passante  Temps de traitement  Temps de transmission  Temps de réponse (requêtes par seconde)
  • 4. Introduction performances et le web Fixer le contexte Etablir des objectifs
  • 5. Introduction performances et le web Adapter les technologies o Framework / CMS / à la root’s o Objet / Procédural o Librairies C / librairies PHP
  • 6. Introduction performances et le web Mesurer o Obtention de points de comparaison o Détection ponctuelle des inefficacités/bouchons o Surveillance o Ne pas se fier à son intuition
  • 7. Introduction performances et le web S’arrêter… Les Graphes de NID #1
  • 8. Mesure CPU et PHP Peu d’outils o Gestionnaire des tâches o top o tout ce qui permet d’afficher des processus…
  • 9. Mesure Stockage et PHP Volumétrie à prévoir o logs o création/stockage de documents o BDD o documents uploadés o session o fichiers de cache
  • 10. Mesure Mémoire et PHP Plusieurs méthodes o liste des processus o memory_get_usage(), memory_get_peak_usage() o stacktrace Xdebug (voir API)
  • 11. Mesure Requêtes par seconde et PHP Montée en charge o ApacheBench o Siege o httperf
  • 12. Mesure Temps de transmission et PHP Limiter les requêtes au serveur o Réduire le nombre de fichiers JS/CSS/images afin de réduire la sollicitation du serveur o Réduire leur taille o Smarty output filter « trim white space » permet de retirer les espaces/tabulations de la page finale
  • 13. Mesure Temps de traitement et PHP Profiling o Zend_Debugger o Xdebug o Outils BDD
  • 14. Mesure SQL Server Management 2005 – estimation du plan d’exécution
  • 15. Optimisation Optimisation du code J’essaye de réduire mon code au minimum de lignes possibles, c’est plus optimisé Il faut utiliser des simples quotes au lieu des doubles quotes, c’est plus rapide à interpéter Il vaut mieux un gros fichier contenant plein de classes, qu’un fichier par classe, c’est plus performant T’as tout biché!
  • 16. Optimisation Optimisation du code Design patterns
  • 17. Optimisation Optimisation du code Cache o SQL (PHP ou BDD) o Session o Zend_Cache o Smarty o etc…
  • 18. Optimisation Optimisation du code Cache via la session
  • 19. Optimisation Optimisation du code Cache Zend
  • 20. Optimisation Optimisation du code Cache Smarty
  • 21. Optimisation Optimisation du code Bonnes pratiques o Autoloader plutôt que require_once() o Réduire et ordonnancer les include_path o Utiliser des en-têtes HTTP (Cache-Control, Expire) o Eviter les regexps…
  • 22. Optimisation Optimisation autre Configuration o php.ini, par exemple realpath_cache_size o configuration Apache…
  • 23. Optimisation Optimisation autre Saturation o Mémoire : dimensionner la mémoire par rapport à la consommation moyenne par thread o CPU : pas grand chose à faire, des pics CPU sont souvent liés à l’utilisation d’une VM. Donc bien choisir la technologie de virtualisation… o Ne pas oublier Google Analytics/XITI pour surveiller la charge
  • 24. Optimisation APPLAUSE