l'auteur suggère de gérer son cache en javascript pour la partie intelligente = ne recharger la page que lorsque quelque chose a changé. Ca fait un bout de temps que j'y pense, mais j'hésite à mettre ce genre de chose en prod
- fait par Steve Souders
- le but avoué est d'en faire un standard
- calculs basés sur l'API WebTiming, la google toolbar, un plugin firefox, ou simplement JS + un cookie
- "améliorer" les perfs a diminué le revenu
- les développeurs n'ont regardé que les scores ySlow et PageSpeed + le waterfall d'une page
- ils ont oublié que les utilisateurs naviguaient sur plusieurs pages
- une meilleure mesure a été obtenue en posant un javascript sur les pages pour mesurer le temps de chargement effectif
Une excellente synthèse des APIs disponibles en HTML5 et CSS3 pour tirer partie des optimisations des navigateurs, et des choses à éviter dans le code.
Qui eut cru que les fonctions anonymes pouvaient être nommées ? ;-)
Présentation rapide des 11 sous-systèmes utilisés par un navigateur Web pour effectuer le rendu de la page, en partant du réseau pour terminer à l'affichage.
Quelques chiffres montrent qu'en tant que développeur Web, on a la main sur les temps utilisés sur chacune des couches ... pour peu qu'on l'ait en tête.
C'est chose faite ;-)
morale qu'on connaît déjà car on ne peut agir que
- sur les cookies (enfin l'absence de)
- sur le ETag (le virer pour le remplacer par du cache agressif)
- éventuellement trafiquer Apache ou une machine devant Apache pour supprimer quelques headers serveurs inutiles
bilan :
- les sites US sans CDN délivrent aussi vite que les sites avec CDN
- les sites sans CDN sont des sociétés plus petites qui appliquent mieux les recommendations performance web
bien sur un CDN sert aussi à absorber la charge, pas juste à distribuer plus vite
Librairie de chargement asynchrone de fichiers JavaScript. Elle est légère et rapide, facile à prendre en main et volontairement succinte.
À tester et comparer face à d'autres solutions plus complètes, telles que RequireJS, head.js, $scriptjs ou encore LabJS.
via @DirtyF
y'a bien un spécialiste qui va nous pondre un comparatif un de ces quatres, ça commence à faire beaucoup mais c'est bon signe pour la performance, à adapter toujours en fonction du contexte de toute façon.
moi en tout cas ça me parle.
à faire attention : comme pour d'autres loaders, il faut que le cache soit bien configuré car il fait une requête pour mettre en cache, et une 2nde requête pour exécuter, normalement depuis le cache. Si le cache n'est pas bien configuré (que veux dire "bien" : au moins 10 minutes d'expiration ?), la ressource sera téléchargée deux fois.