⚡
data

Cache

Stockage temporaire de données pour accélérer les accès futurs.

Qu'est-ce que le cache ?

Le cache est un mécanisme de stockage temporaire qui conserve des copies de données fréquemment accédées dans un emplacement plus rapide que la source originale. Le principe fondamental est simple : accéder à une donnée déjà recuperee est toujours plus rapide que la récupérer à nouveau. Le cache est présent à tous les niveaux de l'informatique, du processeur au navigateur web.

Les niveaux de cache

Cache navigateur

Le navigateur met en cache les ressources HTTP (images, CSS, JavaScript) selon les en-tetes Cache-Control, ETag et Expires. Les Service Workers offrent un cache programmatique pour les applications offline-first. Le cache navigateur est le plus proche de l'utilisateur et elimine complètement les requêtes réseau.

Cache CDN

Les serveurs edge du CDN cachent le contenu statique au plus près des utilisateurs. Les en-tetes HTTP (Cache-Control, Vary, Surrogate-Control) controlent le comportement du cache. Les stratégies d'invalidation (purge par URL, par tag, ou par prefixe) permettent de rafraichir le contenu quand la source change.

Cache applicatif

Le cache applicatif (Redis, Memcached) stocke les résultats de requêtes coûteuses en base de données, de calculs complexes, ou de réponses d'API externes. Les stratégies incluent le cache-aside (l'application gere le cache), le read-through (le cache charge automatiquement), le write-through (écriture synchrone cache + source), et le write-behind (écriture asynchrone). Le TTL (Time To Live) définit la durée de validité.

Cache base de données

Les SGBD utilisent des caches internes : le query cache (cache des résultats de requêtes), le buffer pool (pages de données en mémoire), et les vues materialisees (résultats pre-calcules de requêtes complexes). Les index sont aussi une forme de cache structurelle qui accélère les recherches.

Invalidation et cohérence

L'invalidation du cache est considérée comme l'un des deux problèmes les plus difficiles en informatique. Les approches incluent le TTL (expiration temporelle), l'invalidation événementielle (supprimer le cache quand la source change), les clés versionnees (inclure un hash ou version dans la cle), et le stale-while-revalidate (servir le cache expire tout en rafraichissant en arriere-plan). Chaque approche fait un compromis entre fraicheur des données et performance.

Besoin d'aide technique ?

Decrivez votre projet pour des conseils personnalises par nos experts.

Recevoir des conseils

Questions fréquentes

Quand ne pas utiliser de cache ?
Quand les donnees changent tres frequemment, quand la coherence est critique, ou quand le volume de donnees est trop faible pour justifier la complexite.

Pages liées

Chaque semaine, le meilleur de la tech française

Tendances, salaires, outils et opportunités — directement dans votre boîte mail.

Gratuit. Desabonnement en un clic. Pas de spam.