Pour savoir où on va, il faut savoir d'où l'on vient

Vous avez
une question ?
Un projet ?

Contactez nous !
 

Contactez-nous

Vous avez une question ? un projet ? 
Vous souhaitez plus d'informations sur un produit ? sur notre offre ? 
Contactez-nous, on vous répond sous 4H.

eZHumanCAPTCHACode reload
retour

Gestion du cache navigateur

Gestion du cache navigateur

Nous nous intéresserons plus loin aux outils de cache côté serveur. Les navigateurs web gèrent aussi leur propre cache. L’utilisateur a quelques options pour configurer le fonctionnement de ce cache, mais pour l’essentiel, le fonctionnement dépend des directives fournies par le serveur, ou par l’application. Il s’agit principalement des directives " expires " et " cache-control ".

 

Il peut y avoir deux stratégies dans cette gestion. La première consiste à spécifier une durée de vie « raisonnable », c’est à dire correspondant au délai pendant lequel on peut accepter que la ressource soit obsolète. Ainsi, on peut spécifier un paramètre « expires » à T0+ 24h pour des fichiers CSS, et accepter qu’un changement mette 24 heures à être visible par tous les internautes.

Mais la stratégie la plus recommandée est de spécifier une durée de vie quasi infinie (c’est à dire un expires à T0+ 10 ans), et à renommer le fichier lorsqu’il vient à changer.

En effet, il faut se souvenir que tous ces fichiers auxiliaires, css, js ou images, sont toujours spécifiés au sein de la page html, de manière directe ou indirecte. Si chaque fichier porte en suffixe son numéro de version, par exemple common_styles_3.2.css, alors le jour où ces styles changent, on fera référence au fichier common_styles_3.3.css, qui bien sûr ne pourra pas être en cache. Le petit inconvénient serait que le 3.2 va rester en cache à jamais. Mais ce n’est pas grave, tant qu’il y a de la mémoire. Et s’il n’y en avait plus, alors il serait purgé en tant que « Least Recently Used ».

Cette seconde stratégie est meilleure car elle n’implique pas un compromis entre réactivité et performance. Autant un cache de niveau serveur peut être efficace avec des durées de vie d’à peine un quart d’heure, autant pour un cache de niveau navigateur, une durée de vie de 24 heures n’est pas vraiment suffisante.

Il faut souligner qu’une bonne gestion des directives de cache bénéficie au confort de l’utilisateur – sa page s’affiche beaucoup plus vite – mais aussi à la capacité du serveur : il y a moins de composants à servir, donc une économie tant de bande passante que de CPU.

Cette stratégie de gestion du cache navigateur se définit le plus souvent au niveau du serveur Apache, et donc de manière transparente pour les applications.