mardi 19 janvier 2010
Pourquoi mon site est-il lent à charger ? YSlow (à l'anglaise "Why Slow"), un petit composant proposé par Yahoo!, peut vous donner d'excellentes pistes de solutions. C'est d'ailleurs le but de cette extension Firefox : analyser votre code et proposer des suggestions d'optimisation.
Installé à même un onglet additionnel de Firebug, il scrute la page web courante et propose des recommandations sur différents volets :
- Contenu
- Cookie
- CSS
- Images
- JavaScript
- Serveur
Pour chaque test, un grade de A à F est attribué, A étant la meilleure note. Ensuite, un score global est décerné, dans mon cas : Grade E (et F en mode classique!). Honnêtement, ce n'est vraiment pas très bon. 75 requêtes HTTP et 218 Kb chargés en page d'accueil dont la moitié en JavaScript...
Mais c'est aussi dû au fait que j'utilise le service Blogspot et que je n'ai pas le contrôle total sur mon environnement, donc limité dans les optimisations que je peux appliquer. Je suis obligé de lier plusieurs JavaScript externes pour pouvoir faire apparaître les exemples de code source avec SyntaxHighlighter (hébergés sur GoogleCode.com). YSlow me suggère de compresser ("minify") les JavaScript et les CSS (par exemple avec YUI Compressor), d'utiliser la compression HTTP avec gzip et si possible de placer tout le code JavaScript au bas de la page. Enfin, les pires notes sont attribuées à la compression et au nombre de requêtes HTTP à minimiser.
Le pire, c'est que ce sont pour la plupart des sujets que j'ai déjà abordé ici mais que je ne peux même pas mettre en application sur mon propre blogue !
En guise de consolation, voyons quelques scores sur les pages d'accueil de sites que je visite souvent :
- Google : A
- Twitter : B
- Amazon.ca : B
- eBay : B
- Digg : D
- Failblog : D
- Cyberpresse : E
Ce que j'aime de YSlow, c'est qu'il intègre des explications sur les recommandations et on suggère des textes connexes pour apprendre à corriger le point. Des outils sont aussi suggérés comme Smush.it pour l'optimisation des images et JSLint pour vérifier la qualité du code JavaScript (écrit par Douglas Crockford, architecte JavaScript chez Yahoo! et auteur du livre JavaScript, The Good Parts).
Pour les professionnels du web, à installer sans plus attendre.