La mise en cache est un ensemble de techniques dont l’objectif est de stocker temporairement des données (images javascripts etc constituant les pages HTML d’un site) de manière à les rendre plus rapidement disponibles aux utilisateurs lorsqu’ils consultent votre site.
Sans système de cache, toutes les ressources nécessaires au bon rendu de votre site nécessitent chacune une ou plusieurs requêtes pour s’afficher sur l’écran de votre utilisateur.
Or, ces requêtes prennent toutes du temps à parcourir le chemin qui sépare le poste de l’utilisateur du serveur sur lequel elles sont stockées. Pour optimiser la vitesse de chargement d’une page, il faut donc soit moins/peu de requêtes, soit réduire la distance que ces requêtes doivent parcourir. La granularité des éléments que l’on peut mettre en cache est très variable : site, pages du site, zones ou fonctionnalités sur la page, ressources transverses (fonts, css, images, js)….
Il existe plusieurs emplacements possibles pour la mise en cache des données. Plus la donnée à afficher sera stockée dans un emplacement proche de l’utilisateur, plus la distance sera parcourue rapidement :
La durée de stockage des données est un point essentiel des bonnes stratégies de mise en cache :
une page histoire de la marque n’a pas vocation à changer tous les jours, l’information contenue dans cette page ne va pas changer fréquemment. Les ressources qui la composent peuvent être qualifiées de “statiques”, contrairement à un listing produit qui affiche des données nécessitant d’être parfaitement à jour (stocks, prix…) : ce sont des ressources dites “dynamiques”. La durée de mise en cache des données en fonction de leur besoin en actualisation est un levier important de travail lorsqu’on s’attaque à la webperformance.