Cache-Modi ändern

Auf dieser Seite finden Sie eine Anleitung zum Ändern von Cache-Modi mit Cloud CDN. Mit Cache-Modi können Sie konfigurieren, wie Cloud CDN Ihre Inhalte im Cache speichert.

Vorbereitung

  • Informieren Sie sich über Cache-Modi und statische Inhalte.

  • Achten Sie darauf, dass Cloud CDN aktiviert ist. Eine Anleitung hierzu finden Sie unter Cloud CDN verwenden.

  • Aktualisieren Sie bei Bedarf auf die aktuelle Version der Google Cloud CLI:

    gcloud components update
    

Cache-Modus festlegen

So konfigurieren Sie die Cache-Modi für ein Cloud CDN-fähiges Backend:

Console

  1. Rufen Sie in der Console von Google Cloud die Seite Load Balancing auf.

    Zur Seite „Load-Balancing“

  2. Klicken Sie auf den Namen Ihres externen Application Load Balancers.
  3. Klicken Sie auf Bearbeiten .
  4. Wählen Sie unter Backend-Konfiguration ein Backend aus und klicken Sie auf Bearbeiten .
  5. Achten Sie darauf, dass Cloud CDN aktivieren ausgewählt ist.
  6. Wählen Sie unter Cache-Modus eine der folgenden Optionen aus:
    • Statische Inhalte im Cache speichern (empfohlen): Statische Inhalte sind Web-Assets, die sich nicht für jeden Nutzer ändern. Statische Inhalte basieren auf dem Content-Type in der Antwort. Weitere Informationen finden Sie unter Statische Inhalte.
    • Auf Cache-Control-Headern basierende Ursprungsserver-Einstellungen verwenden: Antworten mit gültigen Cache-Anweisungen in den Antwort-Headern zwischenspeichern.
    • Alle Inhalte im Cache speichern: Diese Option sorgt dafür, das alle erfolgreichen Inhalte, die vom Ursprung bereitgestellt werden, im Cache gespeichert werden und das private- und no-store-Anweisungen ignoriert werden.
  7. Klicken Sie auf Speichern.

gcloud

Verwenden Sie für Backend-Dienste den Befehl gcloud compute backend-services create oder gcloud compute backend-services update mit dem Flag --cache-mode.

Verwenden Sie für Backend-Buckets den Befehl gcloud compute backend-buckets create oder gcloud compute backend-buckets update mit dem Flag --cache-mode.

gcloud compute backend-services (create | update) BACKEND_SERVICE_NAME
    --cache-mode=CACHE_MODE
gcloud compute backend-buckets (create | update) BACKEND_BUCKET_NAME
    --cache-mode=CACHE_MODE

Ersetzen Sie CACHE_MODE durch einen der folgenden Werte:

  • CACHE_ALL_STATIC (Standard): Statische Inhalte werden automatisch im Cache gespeichert. Antworten, die als nicht im Cache speicherbar gekennzeichnet sind (mit private- oder no-store-Anweisungen in Cache-Control-Antwortheadern), werden nicht im Cache gespeichert. Damit dynamische Inhalte im Cache gespeichert werden können, muss der Inhalt gültige Caching-Header haben.

  • USE_ORIGIN_HEADERS: Hiermit wird erzwungen, dass der Ursprung zum Speichern von Inhalten im Cache gültige Caching-Header festlegt. Antworten ohne diese Header werden nicht im Edge-Netzwerk von Google gespeichert und erfordern bei jeder Anfrage einen vollständigen Lauf zum Ursprung. Dies kann die Leistung beeinträchtigen und die Last auf dem Ursprungsserver erhöhen.

  • FORCE_CACHE_ALL: Dies sorgt dafür, dass alle Inhalte (d. h. erfolgreiche Antworten) im Cache gespeichert werden. Alle private- und no-store-Anweisungen in Cache-Control-Antwortheadern werden ignoriert. Dies kann dazu führen, dass private, personenbezogene Inhalte im Cache gespeichert werden. Daher sollten Sie diese Funktion nur für Back-Ends aktivieren, die keine privaten oder dynamischen Inhalte bereitstellen, beispielsweise Cloud Storage-Buckets. Aktivieren Sie diese Option nicht auf Back-Ends, die privaten oder dynamischen Inhalt bereitstellen.

API

Verwenden Sie für Backend-Buckets den API-Aufruf Method: backendBuckets.insert oder Method: backendBuckets.update.

Verwenden Sie für Backend-Dienste den API-Aufruf Method: backendServices.insert oder Method: backendServices.update.

Verwenden Sie einen der folgenden API-Aufrufe:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/BACKEND_BUCKET
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE

Fügen Sie dem JSON-Anfragetext folgendes Snippet hinzu:

"cdnPolicy": {
  "cacheMode": (CACHE_ALL_STATIC | USE_ORIGIN_HEADERS | FORCE_CACHE_ALL)

Ersetzen Sie CACHE_MODE durch einen der folgenden Werte:

  • CACHE_ALL_STATIC (Standard): Statische Inhalte werden automatisch im Cache gespeichert, wenn der Ursprung keine gültigen Caching-Header festlegt. Antworten, die als nicht im Cache speicherbar gekennzeichnet sind (mit private- oder no-store-Anweisungen in Cache-Control-Antwortheadern), werden nicht im Cache gespeichert. Damit dynamische Inhalte im Cache gespeichert werden können, muss der Inhalt gültige Caching-Header haben.

  • USE_ORIGIN_HEADERS: Hiermit wird erzwungen, dass der Ursprung zum Speichern von Inhalten im Cache gültige Caching-Header festlegt. Antworten ohne diese Header werden nicht im Edge-Netzwerk von Google gespeichert und erfordern bei jeder Anfrage einen vollständigen Lauf zum Ursprung. Dies kann die Leistung beeinträchtigen und die Last auf dem Ursprungsserver erhöhen.

  • FORCE_CACHE_ALL: Dies sorgt dafür, dass alle Inhalte (d. h. erfolgreiche Antworten) im Cache gespeichert werden. Alle private- und no-store-Anweisungen in Cache-Control-Antwortheadern werden ignoriert. Dies kann dazu führen, dass private, personenbezogene Inhalte im Cache gespeichert werden. Daher sollten Sie diese Funktion nur für Backends aktivieren, die keine privaten oder dynamischen Inhalte bereitstellen, beispielsweise Cloud Storage-Buckets.