Politique de cache : comment bien définir la politique de cache de son site Internet ?

Politique de cache : comment bien définir la politique de cache de son site Internet ?


Avant de vous plonger dans la lecture de cet article sur la définition de votre politique de cache, nous vous invitons fortement (si vous en ressentez le besoin) à aller consulter notre définition des termes de Cache et de Load Balancer.

Ton site tu connaîtras

La première chose à prendre en compte dans la définition de sa politique de cache est de bien connaître le contenu de votre site. Pour cela, le premier exercice consiste à comparer le code HTML de votre page d'accueil sur deux ordinateurs différents. Si le code est parfaitement identique, c'est un très bon début. Si ce n'est pas le cas, vous devez isoler les parties du code qui diffèrent et comprendre d'où viennent leurs différences. Une fois toutes les différences isolées, vous pourrez regrouper les personnalisations par groupe. Prenons un exemple : votre site géolocalise ses utilisateurs par ville sur la page d'accueil. En France, vous aurez près de 38 000 versions différentes de cette page. Ces affichages spécifiques empêchent donc de réaliser des groupes de visiteurs efficaces. Vous devez refaire l'exercice sur toutes les pages de votre site susceptibles de recevoir du trafic.

Quand tous les affichages spécifiques ont été identifiés, la technique la plus simple pour les faire disparaître du HTML et de les charger en AJAX. Ce mécanisme, simple à mettre en place, permet de charger dans un premier temps le HTML commun aux pages qui est en cache, puis, dans un deuxième temps, les affichages spécifiques. Il est essentiel que l'intégralité des différences entre deux versions d'une même page soit traitée. Il est donc maintenant possible de grouper les visiteurs pour chaque page. Il existe d'autres méthodes plus complexes pour la gestion des affichages spécifiques comme les ESI. Le choix entre l'enrichissement Ajax et les ESI est avant tout un choix lié au référencement, car les enrichissement Ajax n'étant pas présent dans le HTML, il ne sont pas pris en compte par les moteurs de recherche.

Les règles du Load Balancer tu définiras

La deuxième partie de la politique de cache consiste à définir les règles que va utiliser le Load Balancer pour mettre en cache les pages. Ces règles se basent sur les URI du site Internet. C'est pour cette raison qu'il est nécessaire de penser à la mise en place du cache dès la conception de votre site. Vous allez donc grouper les pages par URI et indiquer au Load Balancer quelles règles appliquer à chaque groupe. Sur Drupal, l'utilisation des \"patterns\" du module Pathauto facilite ce regroupement.

Prenons l'exemple des ajouts d'actualités sur votre site. Ces actualités ne sont pas souvent mises à jour. Vous avez donc la possibilité de mettre en cache ce type de page pour plusieurs heures. Il suffit donc que toutes les actualités possèdent une partie de l'URI en commun, et vous pourrez indiquer au Load Balancer de garder en cache ces pages pour un certain nombre d'heures. La seule contrainte imposée par ce système est que les modifications effectuées au contenu mettront plusieurs heures à apparaître au public.

En groupant les pages de même type et en indiquant au Load Balancer le temps de mise en cache, vous allez petit à petit définir votre politique de cache.