Personnaliser des clés de cache

Cette page explique comment personnaliser les clés de cache Cloud CDN.

La modification de la configuration des clés de cache peut entraîner une chute soudaine du taux d'accès au cache si les nouvelles demandes commencent à utiliser des clés de cache différentes des anciennes entrées. De même, le changement de créateur de clé de cache n'invalide pas nécessairement les entrées de cache si les nouvelles demandes utilisent la même clé que l'ancienne. Pour invalider des entrées de cache existantes, consultez la page Invalider un contenu mis en cache.

Avant de commencer

Cette page part du principe que vous comprenez le fonctionnement de Cloud CDN, des clés de cache Cloud CDN et des services de backend à équilibrage de charge. Nous vous recommandons de consulter ces pages avant de continuer.

Activer Cloud CDN et personnaliser les clés de cache

Les instructions suivantes permettent d'activer Cloud CDN pour un service ou un bucket de backend à charge équilibrée et de personnaliser la clé de cache en excluant un ou plusieurs composants. Si vous ne disposez pas encore d'un équilibreur de charge à utiliser comme origine, consultez la documentation de l'équilibreur de charge d'application externe pour savoir comment en créer un.

Console

  1. Dans la console Google Cloud, accédez à la page Cloud CDN.

    Accéder à Cloud CDN

  2. Cliquez sur Ajouter une origine.
  3. Dans le menu déroulant Origine, cliquez sur Sélectionner l'origine.
  4. Sélectionnez l'origine pour laquelle vous souhaitez activer CDN.
  5. Sur la ligne de l'origine, cliquez sur Configurer.

    Si Cloud CDN est déjà activé sur cette origine, cliquez d'abord sur le menu , sélectionnez Modifier, puis cliquez sur Configurer.

  6. Décochez les cases pour tous les champs que vous souhaitez omettre de la clé de cache de ce service de backend.

  7. Cliquez sur Enregistrer.

  8. Cliquez sur Ajouter.

gcloud

Spécifiez une ou plusieurs options facultatives pour exclure ce paramètre des clés de cache du service de backend ou du bucket backend.

gcloud compute backend-services update BACKEND_SERVICE \
    --enable-cdn
gcloud compute backend-buckets update BACKEND_BUCKET \
    --enable-cdn

Indicateurs facultatifs :

  • --no-cache-key-include-protocol
  • --no-cache-key-include-host
  • --no-cache-key-include-query-string

Mettre à jour des clés de cache pour rajouter le protocole, l'hôte et la chaîne de requête

Par défaut, les services de backend configurés pour utiliser Cloud CDN incluent tous les composants de l'URI de requête dans des clés de cache. Si vous avez précédemment indiqué qu'un ou plusieurs composants devaient être exclus, vous pouvez suivre la procédure ci-dessous pour les inclure de nouveau.

Les instructions ci-après permettent de rajouter le protocole, l'hôte et la chaîne de requête à la clé de cache d'un service de backend existant sur lequel Cloud CDN est déjà activé.

Console

  1. Dans la console Google Cloud, accédez à la page Cloud CDN.

    Accéder à Cloud CDN

  2. Sur la ligne de votre équilibreur de charge, cliquez sur Menu , puis sur Modifier.
  3. Sur la ligne du service de backend ou du bucket backend que vous souhaitez modifier, cliquez sur Configurer.
  4. Sous Clé de cache, sélectionnez Personnalisé.
  5. Cochez les cases Protocole, Hôte et Chaîne de requête.
  6. Laissez le champ Paramètres de la chaîne de requête vide.
  7. Cliquez sur Enregistrer.
  8. Cliquez sur Mettre à jour.

gcloud

Pour rajouter un seul composant, spécifiez simplement l'option. Toute option non spécifiée reste inchangée.

gcloud compute backend-services update BACKEND_SERVICE \
    --cache-key-include-protocol \
    --cache-key-include-host \
    --cache-key-include-query-string
gcloud compute backend-buckets update BACKEND_BUCKET \
    --cache-key-include-query-string

Mettre à jour les clés de cache pour utiliser une liste d'inclusion ou d'exclusion de chaînes de requête

Ces instructions définissent des clés de cache CDN pour utiliser une liste d'inclusion ou d'exclusion avec des paramètres de chaîne de requête.

Console

  1. Dans la console Google Cloud, accédez à la page Cloud CDN.

    Accéder à Cloud CDN

  2. Sur la ligne de votre équilibreur de charge, cliquez sur Menu , puis sur Modifier.
  3. Sur la ligne du service de backend que vous souhaitez modifier, cliquez sur Configurer.
  4. Sous Clé de cache, sélectionnez Personnalisé.
  5. Confirmez que la case à cocher Chaîne de requête est sélectionnée.
  6. Si vous souhaitez spécifier des paramètres de chaîne de requête devant faire partie de la clé de cache, sélectionnez Inclure uniquement les paramètres sélectionnés.

    Si vous souhaitez spécifier que tous les paramètres de chaîne de requête, à l'exception de ceux que vous répertoriez, sont inclus dans la clé de cache, sélectionnez Inclure tous les paramètres, sauf ceux sélectionnés.

  7. Saisissez la liste de chaînes séparées par des virgules dans le champ Paramètres de la chaîne de requête.

  8. Cliquez sur Enregistrer.

  9. Cliquez sur Mettre à jour.

gcloud

Utilisez la commande suivante pour définir la chaîne user comme liste d'inclusion.

gcloud compute backend-services update BACKEND_SERVICE \
    --cache-key-include-query-string \
    --cache-key-query-string-whitelist user

Utilisez la commande suivante pour définir la chaîne user comme liste d'exclusion.

gcloud compute backend-services update BACKEND_SERVICE \
    --cache-key-include-query-string \
    --cache-key-query-string-blacklist user

Mettre à jour des clés de cache pour utiliser des en-têtes HTTP

Les instructions ci-après définissent les clés de cache Cloud CDN permettant d'utiliser des en-têtes HTTP.

Console

La console Google Cloud n'est actuellement pas compatible avec cette fonctionnalité.

gcloud

gcloud compute backend-services update BACKEND_SERVICE \
    --cache-key-include-http-header=[HEADER_FIELD_NAME,...]
gcloud compute backend-buckets update BACKEND_BUCKET \
    --cache-key-include-http-header=[HEADER_FIELD_NAME,...]

Mettre à jour des clés de cache pour utiliser des cookies nommés

Les instructions ci-après définissent les clés de cache Cloud CDN permettant d'utiliser des cookies HTTP.

Console

La console Google Cloud n'est actuellement pas compatible avec cette fonctionnalité.

gcloud

gcloud compute backend-services update BACKEND_SERVICE \
    --cache-key-include-named-cookie=[NAMED_COOKIE,...]

Étapes suivantes

  • Consultez la page Afficher les journaux pour vérifier si Cloud CDN diffuse des réponses à partir d'un cache.