Mise en cache : accélérer le chargement d’une page web

Sommaire

La mise en cache consiste à conserver une copie temporaire d’une donnée déjà calculée ou déjà téléchargée pour la restituer immédiatement à la demande suivante, sans refaire le travail. Sur le web, elle évite au navigateur de retélécharger les mêmes images et au serveur de régénérer la même page à chaque visite. Résultat : un affichage plus rapide, une charge serveur allégée et une bande passante préservée.

Votre site ou votre application met trop de temps à s’afficher ? Sokeo, agence de développement informatique à Marseille, audite votre stratégie de cache et conçoit des applications web pensées pour la performance dès la première ligne de code. Demandez votre devis gratuit et échangeons sur votre projet.

Mise en cache en informatique : schéma explicatif

Qu’est-ce qu’un cache en informatique ?

Un cache en informatique est une zone de stockage rapide qui garde une copie de données coûteuses à obtenir. Le principe tient en deux cas de figure :

  • cache hit : la donnée demandée est présente et encore valide, elle est renvoyée instantanément ;
  • cache miss : elle est absente ou périmée, le système va la rechercher à la source (base de données, disque, serveur distant), la renvoie, puis la stocke pour la prochaine fois.

Chaque élément mis en cache porte une durée de validité, définie par des en-têtes comme Cache-Control ou par un TTL côté serveur. Passé ce délai, la copie est considérée comme périmée et doit être revalidée. C’est ce mécanisme qui explique qu’une modification publiée sur un site puisse rester invisible quelques minutes ou quelques heures pour certains visiteurs.

Les différents niveaux de mise en cache d’un site

Une même page web traverse plusieurs caches empilés, chacun avec son rôle :

  • Le cache navigateur : conserve sur le poste de l’internaute les images, feuilles de style et scripts déjà chargés. C’est lui qui rend la deuxième visite bien plus rapide que la première.
  • Le CDN : réplique les fichiers statiques sur des serveurs répartis géographiquement, pour réduire la distance et donc la latence.
  • Le cache serveur ou reverse proxy : stocke la page HTML déjà générée et la sert telle quelle, sans repasser par le code applicatif.
  • Le cache applicatif : garde en mémoire des résultats intermédiaires, des sessions ou des fragments de page. Sa place se décide dès la conception de l’architecture de l’application web, pas après coup.
  • Le cache de base de données : évite de rejouer les requêtes lourdes identiques.

Bien réglés, ces niveaux permettent d’absorber un pic de trafic sans effondrement. C’est d’ailleurs ce qu’un test de charge met en évidence : la différence entre une plateforme qui tient un lancement produit ou une période de soldes et une autre qui s’écroule vient rarement de la puissance du serveur, mais de ce qui est mis en cache ou non.

Consulter une page web en cache : ce qui a changé

Chercher une page web en cache renvoie à deux usages très différents.

Le premier est local : votre navigateur affiche une version stockée sur votre machine. Pour forcer le rechargement complet, un rafraîchissement forcé (Ctrl + F5 sur Windows, Cmd + Maj + R sur Mac) ou la navigation privée suffisent. C’est le premier réflexe à avoir avant de conclure qu’une modification n’a pas été publiée.

Le second concerne la copie conservée par les moteurs de recherche, et il faut le savoir : le cache de Google n’existe plus. Le lien « En cache » a disparu des résultats début 2024, et l’opérateur cache: a été définitivement coupé en septembre 2024. Google renvoie désormais vers la Wayback Machine d’Internet Archive depuis le panneau « À propos de ce résultat ». Pour retrouver une version antérieure d’une page, c’est aujourd’hui archive.org qu’il faut interroger.

Ce que la mise en cache change vraiment

  • Un affichage plus rapide, donc moins d’abandons avant même que la page ne s’affiche.
  • Une infrastructure protégée : servir une page déjà générée coûte une fraction des ressources nécessaires pour la reconstruire.
  • Un meilleur référencement : la vitesse d’affichage fait partie des signaux d’expérience de page pris en compte par Google, et un site rapide s’explore plus facilement.
  • Des coûts d’hébergement contenus, puisque la même infrastructure absorbe davantage de visiteurs.

Encore faut-il mesurer l’effet réel. Des outils de monitoring branchés sur les temps de réponse permettent de vérifier que le cache travaille vraiment, et de repérer les pages qui repartent systématiquement en base.

Les pièges d’une mise en cache mal réglée

Un cache trop agressif est aussi problématique qu’un cache absent :

  • Contenu obsolète : prix, stocks ou horaires figés pendant des heures. Toute donnée qui change vite exige une invalidation explicite à la publication.
  • Fuite de données personnelles : mettre en cache une page personnalisée, un panier ou un espace client peut afficher les informations d’un visiteur à un autre. Ces pages doivent rester hors cache partagé, un point à traiter avec le reste de la sécurisation de l’application web.
  • Faux diagnostic : un bug déjà corrigé qui semble persister est très souvent un cache non purgé, côté navigateur ou côté CDN.

À retenir

Un cache en informatique conserve une copie temporaire d’une donnée pour éviter de la recalculer. Sur le web, la mise en cache se joue sur plusieurs niveaux, du navigateur jusqu’à la base de données, et détermine autant la vitesse perçue que la capacité à encaisser du trafic. La vraie difficulté n’est pas de l’activer, mais de décider ce qui doit être caché, pour combien de temps, et comment l’invalider. Ces règles se posent dès la conception d’une application web sur mesure : les rattraper après la mise en production coûte toujours plus cher.