Qu'est-ce que la mise en cache ? | Comment un site web est-il mis en cache ?

Les caches stockent des copies des fichiers pour pouvoir les livrer plus rapidement là où elles sont nécessaires.

Share facebook icon linkedin icon twitter icon email icon

Qu'est-ce que la mise en cache ?

Objectifs d’apprentissage

Après avoir lu cet article, vous pourrez :

  • Expliquer comment fonctionne la mise en cache
  • Comprendre comment et quand le contenu est mis en cache
  • Comprendre les différents types de mise en cache
  • Apprendre comment les CDN mettent en cache le contenu

Qu'est-ce que la mise en cache ?

La mise en cache est le processus de stockage de copies de fichiers dans un cache ou un emplacement de stockage temporaire, afin de pouvoir y accéder plus rapidement. Techniquement, un cache est un emplacement de stockage temporaire pour des copies de fichiers ou de données, mais le terme est généralement utilisé en référence aux technologies Internet. Les serveurs DNSmettent en cache les enregistrements DNS pour accélérer les recherches, les serveurs CDN mettent en cache le contenu pour réduire la latence et les navigateurs web mettent en cache les fichiers HTML, JavaScript et les images pour charger les sites web plus rapidement.

Pour comprendre le fonctionnement des caches, pensez aux caches de nourriture et d'autres fournitures du monde réel. Lorsque l'explorateur Roald Amundsen était sur le chemin du retour de son expédition au pôle Sud en 1912, lui et ses hommes ont survécu grâce aux caches de nourriture qu'ils avaient stockés en cours de route. Cette mesure était beaucoup plus efficace que d'attendre que des fournitures soient livrées à partir de leur camp de base pendant qu'ils progressaient. Les caches sur Internet ont un objectif similaire : ils stockent temporairement les « fournitures» , ou contenu, nécessaires aux utilisateurs pour effectuer leur voyage sur le web.

Qu'est-ce que la mise en cache CDN ?

Un CDN, ou réseau de diffusion de contenu, met en cache du contenu (comme des images, des vidéos ou des pages web) dans des serveurs proxy situés plus près des utilisateurs finaux que les serveurs d'origine (un serveur proxy est un serveur qui reçoit des requêtes de clients et les transmet à d'autres serveurs). Comme les serveurs sont plus proches de l'utilisateur qui fait la requête, un CDN est en mesure de fournir du contenu plus rapidement.

Content Delivery Network (CDN)

Représentez-vous un CDN comme une chaîne d'épiceries : au lieu d'aller jusqu'aux fermes qui cultivent les légumes, qui se trouvent peut-être à des centaines de kilomètres, les clients se rendent à l'épicerie du coin. Ils se déplacent, certes, mais sur une distance moindre. Parce que les épiceries stockent des produits provenant de fermes lointaines, les achats à l'épicerie ne prendront que quelques minutes au lieu de plusieurs jours. De même, CDN met en cache le contenu qui apparaît sur Internet afin que les pages web se chargent beaucoup plus rapidement.

Comment le contenu est-il mis en cache ?

Lorsqu'un utilisateur demande du contenu à partir d'un site web à l'aide d'un CDN, le CDN récupère ce contenu à partir d'un serveur d'origine, puis enregistre une copie du contenu pour les requêtes futures. Le contenu mis en cache reste dans le cache CDN tant que les utilisateurs continuent de le demander.

Qu'est-ce qu'un hit de cache ? Qu'est-ce qu'un échec de cache ?

Un hit de cache, ou succès de cache, se produit lorsqu'un périphérique client fait une requête de contenu au cache et que le contenu de ce cache est enregistré. Un échec de cache, appelé aussi défaut de cache (cache miss) se produit lorsque le cache n'a pas le contenu demandé. Dans le cas d'un échec de cache, un serveur CDN transmettra la requête au serveur d'origine, puis mettra en cache le contenu une fois que le serveur d'origine répond, de sorte que les requêtes suivantes se traduiront par un hit de cache.

Où sont situés les serveurs de mise en cache CDN ?

Les serveurs de mise en cache CDN sont situés dans des datacenters partout dans le monde. Cloudflare dispose de serveurs CDN dans 200 villes réparties dans le monde afin d'être aussi proche que possible des utilisateurs finaux accédant au contenu. Un emplacement où les serveurs CDN sont présents est également appelé datacenter.

Combien de temps les données mises en cache restent-elles dans un serveur CDN ?

Lorsque les sites web répondent aux serveurs CDN avec le contenu demandé, ils attachent des informations au contenu qui permettront aux serveurs de savoir combien de temps le stocker. Ces informations sont stockées dans une partie de la réponse appelée en-tête HTTP qui spécifie le nombre de secondes, minutes ou heures pendant lesquelles le contenu est mis en cache. Ceci est connu sous le nom de Time-To-Live (TTL). Lorsque le TTL expire, le cache supprime le contenu. Certains CDN purgent également les fichiers du cache plus tôt si le contenu n'est pas demandé pendant un certain temps ou si un client CDN purge manuellement certains contenus.

Comment fonctionnent les autres types de mise en cache ?

La mise en cache du navigateur webintervient lorsqu'un navigateur enregistre une copie des fichiers d'un site web sur le disque dur de l'appareil de l'utilisateur. Lorsqu'une page web est mise en cache, le navigateur n'a besoin que de charger des éléments nouveaux ou mis à jour d'une page, ce qui permet aux navigateurs de diffuser des pages rapidement même si une connexion Internet est lente. Les navigateurs stockent ces fichiers jusqu'à l'expiration de leur TTL ou jusqu'à ce que le cache du disque dur soit plein. Les utilisateurs peuvent également vider le cache de leur navigateur s'ils le désirent.

La mise en cache DNS a lieu sur les serveurs DNS. Les serveurs stockent les recherches DNS récentes dans leur cache afin de ne pas avoir à interroger les serveurs de noms. Ils peuvent répondre instantanément avec les adresses IP d'un domaine.

Les moteurs de recherche peuvent mettre en cache des pages web qui apparaissent fréquemment dans les résultats de recherche afin de répondre aux requêtes des utilisateurs, même si le site web auquel ils tentent d'accéder est temporairement indisponible ou incapable de répondre.

Comment Cloudflare utilise-t-il la mise en cache ?

Cloudflare propose un CDN avec 200 PoP distribués à l'international. Cloudflare propose des services de mise en cache CDN gratuits, tandis que les clients CDN payants peuvent personnaliser la façon dont leur contenu est mis en cache. Le réseau est Anycast , ce qui signifie que le même contenu peut être fourni à partir de n'importe lequel de ces PoP. Un utilisateur à Paris et un utilisateur à Sydney peuvent tous deux afficher le même contenu chargé à partir de serveurs CDN à seulement quelques kilomètres.