Aller au contenu

Qu'est-ce qu'un cache ? Définition, fonctionnement et exemples

Un cache est un espace de stockage temporaire qui conserve le résultat d'une opération coûteuse pour le réutiliser au lieu de le recalculer. Sur le web, il évite de redemander au serveur une image, une page ou une donnée déjà obtenue, ce qui réduit à la fois le temps d'affichage et la charge des machines.

En une phrase

Un cache garde une copie de ce qui a déjà été calculé, pour ne pas avoir à le refaire.

À retenir

  • Le cache échange de la mémoire contre du temps : on stocke pour éviter de recalculer.
  • Il existe à plusieurs niveaux : navigateur, réseau, serveur, base de données.
  • Sa difficulté n'est pas de stocker, mais de savoir quand la copie n'est plus valable.
  • Un cache mal invalidé sert du contenu périmé, ce qui est pire que pas de cache du tout.

Fiche du terme

Cache
Mise en cache · Caching
Terme anglais
Cache
Domaine
Performance web
Catégorie
Architecture et performance
Niveau
Débutant à intermédiaire

Que signifie exactement « cache » ?

Le principe est ancien et vaut bien au-delà du web : quand une opération est lente ou coûteuse, on en garde le résultat sous la main. La deuxième demande n'a plus à payer le prix de la première. Ce qui varie d'un cache à l'autre, c'est l'endroit où la copie est rangée et la durée pendant laquelle on la considère fiable.

Sur un site, plusieurs caches se superposent. Le navigateur garde les images et fichiers déjà téléchargés. Un réseau de diffusion garde une copie des pages dans des serveurs proches du visiteur. Le serveur applicatif garde le résultat de calculs répétés. La base de données garde en mémoire les requêtes fréquentes.

La vraie difficulté n'est pas de mettre en cache : c'est l'invalidation. Combien de temps une copie reste-t-elle juste ? Que faire quand la donnée d'origine change ? Un prix modifié dans votre back-office mais servi depuis un cache pendant six heures, c'est un problème commercial, pas un détail technique.

Comment fonctionne un cache ?

  1. 01

    Une demande arrive

    Le système vérifie d'abord s'il possède déjà une copie valable de ce qui est demandé.

  2. 02

    Copie trouvée et encore valable

    Elle est renvoyée immédiatement, sans recalcul ni appel à la base de données. C'est le cas rapide.

  3. 03

    Copie absente ou périmée

    L'opération est exécutée normalement, puis son résultat est stocké pour les demandes suivantes.

  4. 04

    La donnée source change

    La copie doit être invalidée, soit à l'expiration d'un délai fixé, soit explicitement au moment de la modification.

Exemple concret

Votre page d'accueil affiche vos trois derniers articles. Sans cache, chaque visiteur déclenche une requête en base de données pour les retrouver — mille visiteurs, mille requêtes identiques. Avec un cache de cinq minutes, la première visite paie le calcul et les suivantes reçoivent la copie. La base passe de mille requêtes à douze par heure, et la page s'affiche plus vite pour tout le monde.

À quoi sert un cache ?

Accélérer l'affichage

Servir une copie prête est presque toujours plus rapide que reconstruire la réponse, surtout sur une connexion mobile.

Réduire la facture serveur

Moins de calculs et moins de requêtes en base signifient des machines plus petites pour le même trafic.

Absorber les pics

Lors d'une campagne ou d'un pic de trafic, le cache encaisse la charge que le serveur ne pourrait pas traiter.

Rester disponible

Certains caches continuent de servir une copie même quand le service d'origine est momentanément indisponible.

Avantages et limites

  • Gain de vitesse immédiat, souvent le plus rentable de tous
  • Charge serveur et coûts d'hébergement réduits
  • Meilleure résistance aux pics de trafic
  • Risque de servir une information périmée si l'invalidation est mal pensée
  • Difficile à déboguer : le comportement dépend de ce qui est en cache
  • Inadapté aux données personnalisées ou strictement temps réel

Pourquoi le cache compte pour une entreprise

C'est le levier de performance au meilleur rapport effort/résultat. Une mise en cache correcte fait souvent gagner plus de secondes qu'une refonte complète, pour une fraction du coût. Le revers est qu'un cache mal réglé affiche des prix, des stocks ou des horaires périmés — et cette erreur-là se voit côté client.

Questions fréquentes

Pourquoi mes modifications n'apparaissent-elles pas tout de suite ?

Parce qu'un cache sert encore l'ancienne version. Selon le niveau concerné, il faut attendre l'expiration du délai ou déclencher une invalidation explicite après la modification.

Faut-il tout mettre en cache ?

Non. Les pages personnalisées, les paniers et les données sensibles ne doivent pas l'être, ou seulement de façon privée au navigateur du visiteur. Un cache partagé qui contient des données personnelles est une fuite.

Combien de temps garder une copie ?

Cela dépend de la fréquence à laquelle la donnée change et du coût d'afficher une version périmée. Quelques minutes pour une liste d'articles, un an pour une image dont le nom change à chaque version.

Termes associés

Sources et références

Votre site est lent malgré un bon hébergement ? La mise en cache est souvent le premier levier à actionner, et le moins coûteux.

Faire mesurer vos performances
Glossaire