C’est quoi un serveur cache
Un serveur cache ou cache tout court, est un service qui permet principalement d’augmenter la vitesse des échanges entre deux applications ou deux machines client-serveur. Il réalise cette tâche en stockant en son sein des données, des objets, des fichiers qui seront plus rapidement accessibles à l’application cliente. C’est ce qu’on appelle de la mise en cache. La mise en cache permet aussi de réduire la consommation de la bande passante dans un réseau et réduire la charge du serveur.
Comment fonctionne le cache
On entend beaucoup l’expression « vider le cache » lors de la navigation sur Internet web. C’est en fait un exemple d’application du serveur cache. Lorsque un internaute visite des pages web, il émet des requêtes vers le serveur d’hébergement de ce site. C’est son navigateur qui transmet la requête par le moyen du protocole HTTP. Le serveur traitera donc la requête et enverra le résultat au navigateur qui va l’afficher à l’écran. Cette page peut contenir des images, des fichiers CSS pour la mise en forme, etc.
Tous ces éléments de la page ne se trouvent au même endroit sur le serveur. Afin d’obtenir un page web complète, plusieurs requêtes sont émises par le navigateur vers le serveur. Qui dit requête du navigateur, dit traitement de la part du serveur. Par conséquent, plus les traitements sont nombreux, plus la charge sur le serveur augmente, engendrant des lenteurs. De plus, si l’internaute redemande la même page, le même traitement s’applique.
Afin d’éviter cette surcharge inutile, la page est en partie stockée dans le cache du navigateur pendant une période définie. Lorsque que l’internaute redemande cette même page, le navigateur n’a plus besoin de consulter le serveur. Il vérifie juste que sa copie de la page n’a pas dépassé la période de validité et l’affiche à l’écran. Le navigateur et le serveur réalisent de ce fait un gain en performance et en ressources.
Cet exemple illustre le mode de fonctionnement du serveur cache, mais n’en reste pas la seule application.
Quels sont des exemples d’application du serveur cache
Plusieurs systèmes réalisent la mise en cache des informations afin de considérablement accélérer l’échange des données. En plus de l’exemple ci-dessus du cache navigateur, on distingue aussi:
- Le cache DNS. Au cours de la navigation sur Internet, le serveur DNS réalise la correspondance entre le nom de domaine d’un site et l’adresse IP du serveur. Afin de ne pas chaque fois interroger le serveur DNS pour avoir cette information, les machines conservent les adresses IP et les sites correspondants dans leur cache DNS,
- Les caches des serveurs proxy. Les serveurs proxy peuvent être des machines ou des applications. Ce sont des intermédiaires entre un client et un serveur, permettant généralement un accès rapide aux informations entre les clients et les serveurs. Sa valeur se ressent mieux dans un réseau où la ressource est centralisée et plusieurs clients émettent les mêmes requêtes.
- Le cache de page dynamique. On retrouve ce cache du côté serveur. Il permet d’améliorer réduire la charge du serveur et d’améliorer ses performances.