<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Performance web &#187; analyse</title>
	<atom:link href="http://performance.survol.fr/avec/analyse/feed/" rel="self" type="application/rss+xml" />
	<link>http://performance.survol.fr</link>
	<description>Quelques mots pour des sites web rapides</description>
	<lastBuildDate>Fri, 18 Jun 2010 12:47:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Introduction avec AOL Pagetest</title>
		<link>http://performance.survol.fr/2009/02/introduction-avec-aol-pagetest/</link>
		<comments>http://performance.survol.fr/2009/02/introduction-avec-aol-pagetest/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 11:00:51 +0000</pubDate>
		<dc:creator>Éric</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[analyse]]></category>
		<category><![CDATA[AOL Pagetest]]></category>
		<category><![CDATA[cascade]]></category>
		<category><![CDATA[cdn]]></category>
		<category><![CDATA[connexion]]></category>
		<category><![CDATA[mesure]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[statistique]]></category>
		<category><![CDATA[vidéo]]></category>
		<category><![CDATA[webpagetest]]></category>

		<guid isPermaLink="false">http://performance.survol.fr/?p=387</guid>
		<description><![CDATA[Je vous avais parlé il y a quelques temps de webpagetest.org, la version en ligne de AOL Pagetest. C&#8217;est un des outils de base pour la mesure de performance dans le navigateur, avec des résultats très complets. Il ne s&#8217;agit &#8230; <a href="http://performance.survol.fr/2009/02/introduction-avec-aol-pagetest/">Continuer la lecture <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://performance.survol.fr/2008/12/quelques-outils-en-ligne/">Je vous avais parlé</a> il y a quelques temps de <a href="http://performance.webpagetest.org:8080/">webpagetest.org</a>, la version en ligne de <a href="http://pagetest.wiki.sourceforge.net/">AOL Pagetest</a>. C&#8217;est un des outils de base pour la mesure de performance dans le navigateur, avec des résultats très complets.<br />
<img class="aligncenter size-medium wp-image-344" title="Paramétrage webpagetest" src="http://performance.survol.fr/wp-content/uploads/2008/12/picture-5-300x271.png" alt="Paramétrage webpagetest" width="300" height="271" /></p>
<p>Il ne s&#8217;agit pas de revenir sur l&#8217;outil, mais de vous signaler une vidéo (en anglais) qui détaille pendant 25 minutes <a href="http://www.artzstudio.com/2008/07/optimizing-web-performance-with-aol-pagetest/">comment utiliser l&#8217;outil</a> et ce qu&#8217;il propose. Si vous souhaitiez une introduction, la voici. On y parle non seulement de l&#8217;outil, mais des <a href="http://performance.survol.fr/2008/07/analyse-requete-http-serveur-et-reseau/">connexions TCP</a>, des CDN, etc.</p>
<p>La seconde nouveauté c&#8217;est l&#8217;arrivé dans l&#8217;outil en ligne de nouvelles statistiques pour votre analyse. <span id="more-387"></span>Tout d&#8217;abord une troisième vue, qui vous donne la répartition des téléchargement par type. Êtes-vous bloqués par vos CSS ? <a href="http://performance.survol.fr/avec/image/">vos images</a> ?</p>
<p style="text-align: center;"><a href="http://performance.survol.fr/wp-content/uploads/2009/02/picture-3.png"><img class="size-medium wp-image-389 aligncenter" title="Statistiques par type" src="http://performance.survol.fr/wp-content/uploads/2009/02/picture-3-288x300.png" alt="Statistiques par type" width="288" height="300" /></a></p>
<p>Ensuite, et c&#8217;est peut être le plus important, c&#8217;est une vue graphique du remplissage des différentes files de téléchargements. On y voit très clairement la limitation de <a href="http://performance.survol.fr/2008/04/keep-alive-et-connexions-persistantes/">nombre de connexions simultanées</a>, quand <a href="http://performance.survol.fr/2008/04/javascript-a-sa-place/">un contenu bloque toutes les files</a>, ou quand un serveur refuse les <a href="http://performance.survol.fr/2008/04/keep-alive-et-connexions-persistantes/">connexions persistantes</a>. C&#8217;est finalement bien plus utile par certains points que le graphique en cascade. Vous trouverez ça juste en dessous du graphique en cascade.</p>
<p><a href="http://performance.survol.fr/wp-content/uploads/2009/02/picture-4.png"><img class="aligncenter size-medium wp-image-390" title="Files de connexion" src="http://performance.survol.fr/wp-content/uploads/2009/02/picture-4-300x200.png" alt="Files de connexion" width="300" height="200" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://performance.survol.fr/2009/02/introduction-avec-aol-pagetest/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Quelques outils en ligne</title>
		<link>http://performance.survol.fr/2008/12/quelques-outils-en-ligne/</link>
		<comments>http://performance.survol.fr/2008/12/quelques-outils-en-ligne/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 11:00:53 +0000</pubDate>
		<dc:creator>Éric</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[analyse]]></category>
		<category><![CDATA[cascade]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[réseau]]></category>

		<guid isPermaLink="false">http://performance.survol.fr/?p=341</guid>
		<description><![CDATA[Je vous avais présenté quelques outils, aujourd&#8217;hui en voilà trois autres, en ligne. Le concept de ces outils est le même : on prend une URL, on lance la page, et on trace la cascade des requêtes HTTP avec quelques &#8230; <a href="http://performance.survol.fr/2008/12/quelques-outils-en-ligne/">Continuer la lecture <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Je vous avais <a href="http://performance.survol.fr/avec/outils/">présenté quelques outils</a>, aujourd&#8217;hui en voilà trois autres, en ligne.</p>
<p>Le concept de ces outils est le même : on prend une URL, on lance la page, et on trace la cascade des requêtes HTTP avec quelques statistiques. C&#8217;est là qu&#8217;on voit le temps pris par chaque composant, par la somme des composants, et les éventuels problèmes de performance comme les scripts bloquants.<span id="more-341"></span></p>
<h3>Pingdom : simple et clair</h3>
<p>Le plus simple, et peut être le plus joli, c&#8217;est <a href="http://tools.pingdom.com/">Pingdom</a>. Il se contente de tracer la cascade, en précisant les temps de connexion TCP, d&#8217;envoi et de réception, ainsi que les poids des divers composants. Il n&#8217;y a pas de paramétrage, et il semble que le moteur se permette de lancer presque 10 connexions simultanées. Bref, n&#8217;en faites pas des analyses trop poussées. Par contre pour montrer l&#8217;aperçu de la cascade ou un problème significatif au détour d&#8217;une conversation, c&#8217;est clairement un des outils à retenir. L&#8217;interface est en effet suffisamment jolie pour attirer le non-spécialiste.</p>
<p style="text-align: center;"><a href="http://performance.survol.fr/wp-content/uploads/2008/12/picture-3.png"><img class="size-medium wp-image-342 aligncenter" title="Pingdom" src="http://performance.survol.fr/wp-content/uploads/2008/12/picture-3-300x190.png" alt="" width="300" height="190" /></a></p>
<h3>Site-perf : paramétrable jusqu&#8217;au bout</h3>
<p>Le deuxième outil en ligne est <a href="http://site-perf.com/">site-perf</a>. Le site se veut regrouper des informations sur la performance des sites web, mais c&#8217;est surtout pour son test de performance en ligne qu&#8217;il est intéressant. Il offre plusieurs sources géographiques pour lancer le test et un paramétrage complet : nombre de connexions simultanées, bande passante, latence, qualité de la ligne (% de perte de paquets), compression, keep-alive, login, adresse IP&#8230; tout y est. Je n&#8217;ai pas fait suffisamment de test pour m&#8217;assurer que le résultat est précis ou cohérent avec les outils &laquo;&nbsp;de confiance&nbsp;&raquo; comme <a href="http://www.alphaworks.ibm.com/tech/pagedetailer">IBM Page Detailer</a>, mais le résultat est sans appel : une cascade précise avec six états, dont le temps de résolution DNS, le détail des informations de cache HTTP, et un résumé cohérent.</p>
<p>Les deux seuls défauts sont la largeur de la cascade, qui mériterait de pouvoir prendre plus de place pour une meilleure lecture, et le manque d&#8217;un résumé par type de composant (combien m&#8217;ont coûté les images au total ?).</p>
<p><a href="http://performance.survol.fr/wp-content/uploads/2008/12/picture-4.png"><img class="aligncenter size-medium wp-image-343" title="Site-Perf" src="http://performance.survol.fr/wp-content/uploads/2008/12/picture-4-300x187.png" alt="" width="300" height="187" /></a></p>
<h3>Web Page Test : aussi complet que la version bureau</h3>
<p>Le dernier outil c&#8217;est <a href="http://performance.webpagetest.org:8080/">webpagetest</a>, la version en ligne de <a href="http://pagetest.wiki.sourceforge.net/">AOL Page Test</a>. La cascade est précise et on peut avoir confiance dans l&#8217;outil si c&#8217;est juste une automatisation de la version bureau du logiciel. Moins joli que pingdom (en fait même carrément moche), webpagetest est aussi légèrement moins paramétrable que site-perf.</p>
<p>On a accès à trois sources géographiques avec leurs spécificités, et un choix du nombre de requêtes simultanées. Pour rattraper le tout il est possible de scripter le test. On peut aller réaliser un parcours sur le site, envoyer un formulaire ou accéder une page protégée par authentification. Il manque malheureusement la possibilité de modifier finement la bande passante ou de modifier la latence artificiellement. Vu l&#8217;importance de la latence dans les tests, c&#8217;est dommage.</p>
<p><a href="http://performance.survol.fr/wp-content/uploads/2008/12/picture-5.png"><img class="aligncenter size-medium wp-image-344" title="Paramétrage webpagetest" src="http://performance.survol.fr/wp-content/uploads/2008/12/picture-5-300x271.png" alt="" width="300" height="271" /></a></p>
<p>L&#8217;intérêt de webpagetest c&#8217;est surtout le résultat. On y retrouve une cascade précise et très claire (en grande largeur), qui comprend aussi les temps de début de rendu et de fin de rendu de la page : indispensable si on veut jouer sur le ressenti utilisateur et pas uniquement sur les chiffres bruts.  Derrière cette cascade on a un résumé ressource par ressource des différents temps et poids, avec toutes les entêtes HTTP. Bref, tout ce qui est nécessaire pour travailler. Il y a même un tableau avec des recommandations pour vérifier des critères comme le cache, gzip, la concaténation css/js, le keep-alive, la minimisation ou le keep-alive.</p>
<p>Le double effet kisskool de webpagetest c&#8217;est que ces informations sont fournies en double : une fois pour le premier accès avec un cache vide, et une seconde fois, pour simuler un cache correctement initialisé. Indispensable là aussi. Mieux, cascade et résumés sont disponibles sous forme d&#8217;image et peuvent donc facilement être sauvegardés pour un rapport ou pour comparaison entre deux dates.</p>
<p><a href="http://performance.survol.fr/wp-content/uploads/2008/12/picture-61.png"><img class="aligncenter size-medium wp-image-346" title="Résultat webpagetest" src="http://performance.survol.fr/wp-content/uploads/2008/12/picture-61-300x205.png" alt="" width="300" height="205" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://performance.survol.fr/2008/12/quelques-outils-en-ligne/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Des chiffres à vous rendre malade</title>
		<link>http://performance.survol.fr/2008/09/des-chiffres-a-vous-rendre-malade/</link>
		<comments>http://performance.survol.fr/2008/09/des-chiffres-a-vous-rendre-malade/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 21:02:50 +0000</pubDate>
		<dc:creator>Éric</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[analyse]]></category>
		<category><![CDATA[chiffres]]></category>
		<category><![CDATA[coup de gueule]]></category>
		<category><![CDATA[statistiques]]></category>

		<guid isPermaLink="false">http://performance.survol.fr/?p=181</guid>
		<description><![CDATA[La taille des pages a plus que triplé en 5 ans, passant de 90Ko à 310Ko. Dans le même temps on a aussi doublé le nombre de composants externes par page (de 25 à 50). Cette progression ne faiblit pas, &#8230; <a href="http://performance.survol.fr/2008/09/des-chiffres-a-vous-rendre-malade/">Continuer la lecture <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.websiteoptimization.com/speed/tweak/average-web-page/">La taille des pages a plus que triplé en 5 ans</a>, passant de 90Ko à 310Ko. Dans le même temps on a aussi doublé le nombre de composants externes par page (de 25 à 50). Cette progression ne faiblit pas, bien au contraire. Attention, je bourre le reste de l&#8217;article de chiffres, et certains font peur.<span id="more-181"></span></p>
<p>Pour les utilisateurs bas débit c&#8217;est une horreur. Le point positif c&#8217;est que pendant ce temps nos débits ont explosé et la latence des connexions a diminué. Bref, au final le temps moyen de chargement des pages des utilisateurs haut débit a légèrement baissé, mais c&#8217;est au prix d&#8217;un enfer pour tous les autres (le chiffre US est de 40% de RTC, en France il est plus faible mais non négligeable). A t&#8217;on bien fait ? pas certain.</p>
<h3>Qu&#8217;y a t&#8217;on gagné ?</h3>
<p>Si on y a gagné ces dernières années quand on surf ce n&#8217;est pas en performances mais en richesse et en qualité. Ou pas d&#8217;ailleurs. C&#8217;est ce que sous entend l&#8217;étude mais je ne peux m&#8217;empêcher de faire le parallèle avec nos micro-ordinateurs et nos logiciels. La puissance a vraiment explosé mais ce n&#8217;a pas tellement été pour faire les tâches plus rapidement. On s&#8217;est retrouvés avec de véritables monstres logiciels qui ont mangé chaque année la puissance gagnée. C&#8217;est au point où il est presque plus agréable de faire du traitement de texte sur un vieil ordinateur que sur la toute dernière bête de course associée aux derniers logiciels.</p>
<p>J&#8217;exagère mais l&#8217;esprit est là et je me demande si sur le web ce n&#8217;est pas la même chose. Peut être qu&#8217;on n&#8217;y a pas vraiment gagné en qualité mais que les développeurs font simplement moins attention. La seule exception que je vois c&#8217;est pour les vidéos, où là il y a vraiment eu un gain sensible pour le visiteur.</p>
<h3>Des chiffres&#8230;</h3>
<p>L&#8217;étude me donne ne fait à moitié raison, sans le dire. En 2006 les statistiques font état d&#8217;une page moyenne de 280 balises HTML pour 1440 pixels de haut. C&#8217;est beaucoup tout ça pour &#8230; 500 mots en moyenne. Ca fait deux mots par balise. Le rapport signal/bruit est agaçant. Pour des lignes de 15 mots on a environ un tiers de la hauteur seulement occupée par le contenu texte, c&#8217;est peu. Je ne vous propose pas de vous rassurer parce que entre 2006 et 2007, si le nombre de pages en tableau a été divisée par deux, le nombre de balise a suivi le chemin inverse : on passe à presque 600 balises par page en moyenne. Personnellement je n&#8217;ai pas eu l&#8217;impression que ça s&#8217;est traduit par plus de contenu dans les pages donc on doit être à plus d&#8217;une balise par mot en moyenne. De quoi donner des vertiges.</p>
<p>Mais ce n&#8217;est pas tout parce que sur nos 300Ko de page web on compte en moyenne 50ko sur 7 javascript (compressé), 10ko sur deux fichiers de style, plus les images, qui représentent 75% des requêtes (donc pour ceux qui suivent, à peu près 30 images par page).</p>
<h3>Une saturation</h3>
<p>J&#8217;hésite à continuer. Nous sommes des vrais malades.</p>
<p>Et si nous nous arrétions là ? je ne parle pas des chiffres de l&#8217;étude mais des délires des concepteurs web. Il est temps que nos machines ultrapuissantes connectés avec 1500 fois le débit que j&#8217;avais en 97, commencent à être plus rapides qu&#8217;à l&#8217;époque non ? Commençons à faire de la qualité et du contenu ou lieu de nous vautrer dans toute cette puissance pour faire quelque chose d&#8217;à peine mieux.</p>
<h3>Un espoir</h3>
<p>On peut toujours voir les choses sous plusieurs angles, alors voilà le bon : si réellement on a encore en moyenne deux feuilles de style, sept fichiers javascript et tant d&#8217;images, alors il y a une très bonne marge de progression côté performance pour un investissement très minime : concaténation des fichiers css, des fichiers javascript, et sprites pour les images.</p>
<p>Simple à mettre en oeuvre&#8230; en attendant de mettre fin au reste des délires.</p>
]]></content:encoded>
			<wfw:commentRss>http://performance.survol.fr/2008/09/des-chiffres-a-vous-rendre-malade/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Impact du cache HTTP</title>
		<link>http://performance.survol.fr/2008/03/impact-du-cache-http/</link>
		<comments>http://performance.survol.fr/2008/03/impact-du-cache-http/#comments</comments>
		<pubDate>Fri, 28 Mar 2008 23:27:39 +0000</pubDate>
		<dc:creator>Éric</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[analyse]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[statistique]]></category>

		<guid isPermaLink="false">http://performance.survol.fr/?p=5</guid>
		<description><![CDATA[Le cache HTTP permet aux visiteurs de ne pas re-télécharger les pages ou les éléments de pages qui l&#8217;ont déjà été. C&#8217;est un des meilleurs mécanismes pour accélérer l&#8217;accès du navigateur au contenu mais il est mis en échec par &#8230; <a href="http://performance.survol.fr/2008/03/impact-du-cache-http/">Continuer la lecture <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Le cache HTTP permet aux visiteurs de ne pas re-télécharger les pages ou les éléments de pages qui l&#8217;ont déjà été. C&#8217;est un des meilleurs mécanismes pour accélérer l&#8217;accès du navigateur au contenu mais il est mis en échec par de nombreux cas.<span id="more-6"></span></p>
<ul>
<li>Camille vient sur votre site pour la première fois. Il n&#8217;a jamais téléchargé aucun de vos contenus, le cache HTTP ne lui sera d&#8217;aucune utilité pour ce premier accès.</li>
<li>César est ce qu&#8217;on appelle un power user malgré l&#8217;opposition entre le terme et la connotation qu&#8217;on lui prête. Il a touché la configuration de son navigateur, par exemple en demandant à Microsoft Internet Explorer de vérifier les mises à jour des pages &laquo;&nbsp;à chaque fois&nbsp;&raquo;, et depuis son navigateur ignore toutes les directives de cache.</li>
<li>Carole a installé sur son micro-ordinateur un logiciel extra-ordinaire qui protège sa vie privée, nettoie les fichiers inutiles et assure sa sécurité. Ce logiciel efface le cache du navigateur régulièrement. Carole est déjà venue sur le site, mais son logiciel a effacé toute trace des éléments qui auraient pu être mis en cache.</li>
<li>Céline, enfin, a une configuration tout à fait classique. Elle navigue parfois sur notre site, mais entre ses visites elle va voir aussi d&#8217;autres pages. Son cache est renouvelé pour y mettre les éléments de sites tiers, et les éléments qu&#8217;elle avait mis en cache pour notre site ont été effacés pour faire de la place.</li>
</ul>
<p>Ces quatre personnes ne sont pas isolées, leur situation est même assez fréquente. Malgré toute votre volonté pour que vos visiteurs reviennent chaque jour, le cas de Céline est assez fréquent.</p>
<p>Au final, si on devait donner un chiffre, pour un site bien configuré, on pourrait dire que 50% des visites se font avec un cache rempli (c&#8217;est à dire que les éléments de votre page seront utilisés à partir du cache et non re-téléchargés). Le nombre de pages vues avec un cache efficace est cependant bien plus grand : Une fois la première page chargée, les suivante réutiliseront certainement les mêmes composants graphiques, à partir du cache. Le nombre d&#8217;accès &laquo;&nbsp;avec cache rempli&nbsp;&raquo; peut donc représenter 75 à 80% des pages vues.</p>
<p>Ce serait agréable si vous pouviez vous fier à mes chiffres, mais vous ne le pouvez pas. Cela dépend de votre site. Quel est le nombre de pages vues par visite ? Quelle est la proportion de nouveaux visiteurs sur votre nombre de visites quotidiennes ? Vos habitués viennent-ils tous les jours ou toutes les quinzaines ? Votre site est-il un portail qui pointe vers des sites tiers, un site de contenu éditorial dans lequel on fouille ou un site &laquo;&nbsp;réponse&nbsp;&raquo; sur le quel on trouve ce qu&#8217;on cherche et qu&#8217;on quitte ensuite ?</p>
<p>Chaque cas est différent. Connaître les chiffres adaptés à votre situation spécifique est important. Ce sont ces chiffres qui vont vous permettre de cibler votre première priorité : optimiser le premier accès sans cache (donc en mettre le moins possible, quitte à mettre plein de petits fichiers différents sur chaque page), ou optimiser les accès avec cache (donc préférer en charger autant que possible d&#8217;un coup, quitte à ce que tout ne soit pas utilisé immédiatement sur la page courante) .</p>
<h3>Le protocole de test</h3>
<p>Maintenant que nous avons défini le problème, il faut répondre à notre question. Quels sont les utilisateurs qui viennent potentiellement avec un cache rempli ?</p>
<p>Le test est semble assez simple, il suffit d&#8217;inclure deux éléments dans vos pages : un élément mis en cache, et un élément non mis en cache. En faisant comptant le nombre d&#8217;accès à ces éléments on pourra obtenir le pourcentage de pages avec un accès &laquo;&nbsp;cache rempli&nbsp;&raquo;.</p>
<p>La première subtilité est de retirer les moteurs de recherche et les robots divers. Tous ne suivent pas les recommandations du robots.txt et les outils de statistiques sont reconnus très mauvais pour différencier les robots des vrais utilisateurs. Une solution peut être de faire charger vos deux éléments tests par javascript. Les robots n&#8217;exécutent pour ainsi dire jamais javascript et cela les exclue de fait de nos mesures. Nous excluons du même coup quelques utilisateurs réels qui n&#8217;exécuteront pas javascript mais il est probable que cela ne changera pas fondamentalement nos résultats qui sont fondés sur des proportions et pas des valeurs absolues.</p>
<p>La seconde subtilité est de ne pas dégrader excessivement la page uniquement pour faire une mesure statistique. Nos éléments de test doivent donc absolument être chargés après le contenu normal de la page, et même après l&#8217;exécution potentielle des scripts qui eux aussi s&#8217;exécutent habituellement après le contenu de la page. Une solution est d&#8217;écrire votre javascript à la toute fin de la page, juste avant de fermer la balise &lt;/body&gt;, et d&#8217;enregistrer une fonction sur l&#8217;événement &laquo;&nbsp;load&nbsp;&raquo; de la fenêtre. Cette fonction insèrera les appels vers nos deux éléments de test. Exceptionnellement, et vu qu&#8217;il ne s&#8217;agira que d&#8217;une ou deux lignes, je vous conseille aussi d&#8217;inclure le script directement dans la page HTML et pas dans un fichier externe.</p>
<p>Voici le code que je vous propose :</p>
<pre>&lt;script type="text/javascript"&gt;
var test_cache = function() {
var avec = new Image(1,1) ;
avec.src = "adresse de votre image avec entêtes de cache" ;
var sans = new Image(1,1) ;
sans.src = "adresse de votre image sans entêtes de cache" ;
}
if (window.addEventListener) {
window.addEventListener("load",test_cache,false);
} else if (window.attachEvent) {
window.attachEvent("load",test_cache);
}
&lt;/script&gt;</pre>
<p>Assurez vous que votre première image contient bien toutes les entêtes HTTP qu&#8217;il faut pour qu&#8217;elle soit mise en cache, par exemple une entête &laquo;&nbsp;Expires&nbsp;&raquo; avec une date suffisamment dans le futur. Assurez vous de même que la seconde image ne sera jamais mise en cache. Là c&#8217;est parfois plus compliqué mais les entêtes Pragma, Cache-Control, et une date dans le passé pour l&#8217;entête Last-Modified devrait achever toute ambiguité pour votre navigateur.</p>
<p>Enfin, chaque image devra être la plus petite possible. Dans l&#8217;idéal il faudrait que la requête et la réponse du serveur HTTP soit inférieure à 1ko. Cela implique par exemple de poser vos images sur un domaine où l&#8217;utilisateur n&#8217;aura pas de cookie, ou des cookies de faibles tailles.</p>
<h3>Lire les chiffres</h3>
<p>La première donnée est assez simple à lire dans les journaux d&#8217;accès de votre serveur web. Laissez passer deux bonnes semaines pour que vos visiteurs construisent leur cache, puis comptez le nombre d&#8217;accès à votre première image, comptez le nombre d&#8217;accès à votre seconde image, le rapport entre les deux vous donnera le pourcentage de pages qui sont lues &laquo;&nbsp;avec un cache rempli&nbsp;&raquo;.</p>
<p>Ce n&#8217;est cependant pas forcément la partir la plus intéressante. Si beaucoup de pages sont lues avec cache mais que la première page de chaque visite est toujours sans cache et outrageusement lente, vous perdez des visiteurs. En regardant les IP ou en utilisant des cookies avec identifiants uniques, tentez de vérifier quel pourcentage d&#8217;utilisateur a téléchargé la première image (avec cache). Avec ce chiffre vous aurez le pourcentage de visiteur &laquo;&nbsp;avec cache remplie lors de leur premier accès&nbsp;&raquo;.</p>
<h3>Maintenant c&#8217;est à vous</h3>
<p>Maintenant c&#8217;est à vous. Quelle est votre méthodologie pour analyser les accès avec cache et sans cache ? Voyez vous un moyen d&#8217;améliorer ma procédure ?</p>
<p>Ensuite je vous encourage à mettre en oeuvre cette procédure, et venir poster vos résultats ici.</p>
]]></content:encoded>
			<wfw:commentRss>http://performance.survol.fr/2008/03/impact-du-cache-http/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
