Qu'est-ce que la mise en cache ?

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

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • 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

Copier le lien de l'article

Qu'est-ce que la mise en cache ?

La mise en cache consiste à stocker des copies de fichiers dans un cache, ou 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 souvent utilisé en référence aux technologies Internet. Les navigateurs Web mettent en cache les fichiers HTML, JavaScript et les images afin de charger les sites Web plus rapidement, tandis que les serveurs DNS mettent en cache les enregistrements DNS pour accélérer les recherches et que les serveurs RDC mettent en cache le contenu pour réduire la latence.

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.

À quoi sert la mémoire cache d'un navigateur ?

Chaque fois qu'un utilisateur charge une page web, son navigateur doit télécharger un grand nombre de données afin d'afficher cette page. Pour raccourcir le temps de chargement des pages, les navigateurs mettent en mémoire cache la majeure partie du contenu de la page web, en sauvegardant une copie du contenu de la page web sur le disque dur de l'appareil. Ainsi, la prochaine fois que l'utilisateur charge la page, la majeure partie du contenu est déjà stockée localement et la page se chargera beaucoup plus rapidement.

Les navigateurs stockent ces fichiers jusqu'à l'expiration du time to live (TTL) ou jusqu'à ce que le cache du disque dur soit plein. (Le TTL est une indication de la durée pendant laquelle le contenu doit être mis en cache.) Les utilisateurs peuvent également vider le cache de leur navigateur s'ils le souhaitent.

À quoi sert de vider la mémoire cache d'un navigateur ?

Une fois que la mémoire cache d'un navigateur est vidée, chaque page Web qui se charge se chargera comme si c'était la première fois que l'utilisateur visitait la page. Si une page ne s'est pas chargée correctement la première fois et qu'elle a été mise en cache, le fait de vider le cache peut permettre un chargement correct. Toutefois, l'effacement du cache du navigateur peut aussi ralentir temporairement le chargement des pages.

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

Un RDC, 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 RDC est en mesure de fournir du contenu plus rapidement.

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.

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 RDC ? Qu'est-ce qu'un échec de cache ?

Un hit de cache se produit lorsqu'un dispositif client fait une demande de contenu au cache, et que ce contenu est enregistré dans le cache. Il y a échec de la mise en cache lorsque la cache ne contient pas le contenu demandé.

Un cache hit signifie que le contenu pourra être chargé beaucoup plus rapidement, puisque le RDC peut le fournir immédiatement à l'utilisateur final. En cas d'échec de la mise en cache, un serveur RDC transmet la demande au serveur d'origine, puis met le contenu en cache une fois que le serveur d'origine a répondu, de sorte que les demandes suivantes aboutissent à un résultat positif.

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

Les serveurs de mise en cache du réseau CDN sont situés dans des datacenters partout dans le monde. Cloudflare dispose de serveurs RDC dans 270 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 RDC 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 RDC avec le contenu demandé, ils joignent également le TTL du contenu, indiquant aux serveurs combien de temps ils doivent le stocker. Le TTL est stocké dans une partie de la réponse appelée l'en-tête HTTP , et il indique pendant combien de secondes, minutes ou heures le contenu sera mis en cache. Lorsque le TTL expire, le cache supprime le contenu. Certains RDC purgeront également les fichiers du cache plus tôt si le contenu n'est pas demandé pendant un certain temps, ou si un client du RDC purge manuellement certains contenus.

Comment fonctionnent les autres types de mise en cache ?

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 RDC avec 270 PoP distribués à l'international. Cloudflare propose des services de mise en cache du réseau CDN gratuits, tandis que les clients RDC 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 RDC à seulement quelques kilomètres.