Best Practices für die Inhaltsübermittlung

Diese Seite enthält Best Practices zur optimierten und schnelleren Inhaltsbereitstellung mit Cloud CDN.

Cloud CDN verwendet das HTTP(S)-Load-Balancing als Ursprung für Cache-fähige Inhalte. Ein externer HTTP(S)-Load-Balancer kann Nutzern eine Kombination aus statischen und dynamisch erstellten Inhalten zur Verfügung stellen. Dies erfolgt über eine globale IP-Adresse von Compute Engine-VM-Instanzgruppen und/oder Cloud Storage-Buckets.

Aufgrund der nahtlosen Einbindung in Google Cloud haben Sie mehrere Möglichkeiten, Cloud CDN bereitzustellen und Inhalte zu verwalten. Sie können die hier aufgeführten Best Practices nutzen, um Ihre Bereitstellung zu planen und zu optimieren. Weitere Informationen finden Sie unter Cloud CDN verwenden.

Statische Inhalte automatisch im Cache speichern

Als bewährte Methode zur Verbesserung der Leistung können Sie bei Aktivierung des Cloud CDN zulassen, dass das Cloud CDN automatisch statische Inhalte zwischenspeichert.

Wenn Sie statische Antworten von Ihrem Ursprung automatisch im Cache speichern möchten, können Sie die Einstellung --cache-mode=CACHE_ALL_STATIC verwenden (Standard). Mit dieser Einstellung kann Cloud CDN gängige statische Inhaltstypen im Cache speichern.

Ablaufzeit für zeitkritischen Inhalt festlegen

Jedes Inhaltselement in einem Cloud CDN-Cache ist mit einer Ablaufzeit verknüpft. Legen Sie daher eine Ablaufzeit fest, die zu Ihrem Anwendungsfall passt. Da Ursprungsserver auf dem Cache-Server abgelaufene Inhalte noch einmal senden müssen, ist es wichtig, dass Sie die Ablaufzeit sorgfältig auswählen.

Eine Methode für die Auswahl der Ablaufzeit ist, Inhalte danach zu kategorisieren, wie oft der entsprechende Inhalt aktualisiert wird. Beispiel:

  • Nahezu in Echtzeit stattfindende Aktualisierungen, zum Beispiel Live-Feeds für Sportereignisse oder Verkehr
  • Häufige Aktualisierungen, z. B. wöchentliche, tägliche oder stündliche Wetterdaten oder Bilder auf Titelseiten von Nachrichtenportalen
  • Selten aktualisierte Elemente, z. B. Website-Logos, CSS- oder JavaScript-Dateien

Wählen Sie anschließend die Ablaufzeit nach der Inhaltskategorie aus. Eine Ablaufzeit von 5 Sekunden eignet sich beispielsweise für Sportergebnisse in Echtzeit, während für Wetteraktualisierungen eine Ablaufzeit von einer Stunde verwendet werden kann. Für Inhalte, die in Cloud Storage gespeichert sind, legen Sie die Ablaufzeiten mithilfe von Cache-Control-Metadaten fest. Wenn Inhalte von Compute Engine bereitgestellt werden, bestimmen Sie die Ablaufzeiten, indem Sie Ihre Webserversoftware konfigurieren.

Ablaufzeiten werden durch die Werte max-age und s-maxage im Cache-Control-Header angegeben. Dieser Header wird durch die HTTP-Spezifikation definiert. Die folgenden Einstellungen im Cache-Control-Header machen beispielsweise die damit verbundenen Inhalte mit einer Ablaufzeit von 72 Stunden (259200 Sekunden) öffentlich lesbar und Cache-fähig:

  Cache-Control: public, max-age=259200

Folgen Sie zur Maximierung des Cachings den Richtlinien in der Caching-Übersicht. Denken Sie daran, dass die Werte max-age und s-maxage im Metadatenfeld Cache-Control auf folgende Weise zusammenarbeiten:

  • Die Werte max-age und s-maxage werden in Sekunden gemessen.
  • Der Wert s-maxage gilt nur für freigegebene Caches, nicht für Browser-Caches.
  • Der Wert max-age gilt für alle Caches, sofern er nicht von s-maxage überschrieben wird.

Für Inhalte, die nur selten geändert werden oder die sich zusammen mit anderen Inhalten ändern müssen, ist es oft sinnvoll, eine lange Ablaufzeit in Kombination mit versionierten URLs zu verwenden.

Cache-TTLs optimieren

Sie können die TTLs festlegen oder überschreiben, um zu optimieren, wie lange Cloud CDN Ihre Antworten im Cache speichert und wann Cloud CDN Ihre Antworten erneut validiert.

Sie können auch eine clientseitige TTL definieren, um die Browser-Caches optimal zu nutzen.

Weitere Informationen finden Sie unter TTL-Einstellungen und -Überschreibungen verwenden.

Benutzerdefinierte Cache-Schlüssel zur Verbesserung der Cache-Trefferquote verwenden

Cloud CDN nutzt standardmäßig die vollständige Anfrage-URL, um den Cache-Schlüssel zu erstellen. Für Leistung und Skalierbarkeit ist es wichtig, die Cache-Trefferquote zu optimieren. Sie können benutzerdefinierte Cache-Schlüssel nutzen, um Ihre Cache-Trefferquote zu verbessern.

Cloud CDN-Schlüssel-Wert-Datenbank
Cloud CDN-Schlüssel-Wert-Datenbank

Sie können Cache-Schlüssel anpassen, um eine beliebige Kombination aus Protokoll-, Host- und Anfrage-Strings ein- oder auszuschließen. Angenommen, Sie haben zwei Websites in verschiedenen Domains, die das gleiche Logo verwenden. Sie können benutzerdefinierte Cache-Schlüssel so verwenden, um das Logo anzuzeigen:

  • Der Inhalt der Website ist anders, aber Sie verwenden das gleiche Firmenlogo für beide Domains. Wenn Sie für den Back-End-Dienst, der das Logo enthält, Cloud CDN aktivieren und die Cache-Schlüssel anpassen möchten, müssen Sie das Häkchen im Kästchen Host entfernen. Der Cache ignoriert dann die Domain, speichert aber das Logo.

  • Das Logo muss im Cache gespeichert werden, unabhängig davon, ob es über HTTP oder HTTPS angezeigt wird. Wenn Sie die Cache-Schlüssel für den Back-End-Dienst, der das Logo enthält, anpassen, müssen Sie das Häkchen aus dem Kästchen Protokoll entfernen. Der Cache-Eintrag des Logos wird dann für Anfragen über HTTP wie über HTTPS aufgerufen.

Wie Sie Cache-Schlüssel anpassen, können Sie unter Cache-Schlüssel verwenden herausfinden.

Versionierte URLs zum Aktualisieren von Inhalten verwenden

Bei Verwendung von versionierten Inhalten wird eine andere Version der gleichen Inhalte vom Server angeboten. Sie wird effektiv entfernt, indem dem Nutzer vor dem Ablauf des Cache neue Inhalte angezeigt werden. Die Versionsverwaltung ist kostenlos und einfach zu verwenden. Sie sollte daher standardmäßig für die Aktualisierung von Cache-fähigen Inhalten genutzt werden.

Um Inhalte zu versionieren, fügen Sie der URL einen Parameter (beispielsweise eine Versionsnummer) hinzu. Es gibt verschiedene Möglichkeiten, Parameter in URLs einzubinden, zum Beispiel:

  • Abfragestring hinzufügen: file.ext?v=100
  • Dateinamen ändern: file.1.0.0.ext oder file_v100.ext
  • Dateipfad ändern: /v100/file.ext

Wenn Sie den Parameter hinzufügen, ändern Sie den Namen der Datei und die URL. Durch diese Änderung ignoriert der Cache sämtliche bereits vorhandenen Cache-Einträge.

Entwertung zum Entfernen von Inhalten sparsam verwenden

Entwertung entfernt Inhalte aus den verteilten Cache-Servern von Cloud CDN, bevor der Cache-Eintrag abläuft. Die Entwertung ist letztendlich konsistent.

Wir empfehlen Ihnen, die Entwertung sparsam und nur als letztes Mittel zu verwenden. Entwertung ist beispielsweise dann nützlich, wenn Sie Inhalte aus rechtlichen Gründen oder aufgrund eines versehentlichen Uploads entfernen müssen. Andernfalls empfehlen wir, wenn möglich die Versionsverwaltung zu nutzen oder zu warten, bis der Inhalt normal abläuft. Cloud CDN-Cache-Server bereinigt regelmäßig Inhalte, auf die selten zugegriffen wird, um Platz für neue Inhalte zu schaffen. Inhalte, auf die 30 Tage lang nicht zugegriffen wurde, werden bedingungslos entfernt.

Im Gegensatz zu den unter Ablaufzeiten festlegen und Versionierte URLs verwenden beschriebenen Möglichkeiten ist jede initialisierte Cache-Entwertung kostenpflichtig und die Häufigkeit, mit der Cache-Entwertungen stattfinden können, ist begrenzt.

Weitere Informationen zur Entwertung finden Sie unter Cache-Entwertung.

Signierte URLs verwenden

Wenn Sie signierte URLs verwenden, beachten Sie Folgendes:

Leistungstests von Drittanbietern prüfen

Lesen Sie Berichte von Drittanbietern, z. B. Berichte zur Verfügbarkeit, Latenz und zum Durchsatz von Citrix Radar.