Cloud CDN (Content Delivery Network) nutzt das globale Edge-Netzwerk von Google, um Inhalte näher an die Nutzer heranzubringen, was Ihre Websites und Anwendungen beschleunigt.
Cloud CDN nutzt den globalen externen Application Load Balancer oder den klassischen Application Load Balancer, um Inhalte an Ihre Nutzer zu senden. Der externe Application Load Balancer stellt die Frontend-IP-Adressen und -Ports bereit, die Anfragen empfangen, sowie die Back-Ends, die auf die Anfragen antworten.
Cloud CDN-Inhalte können von verschiedenen Arten von Back-Ends stammen.
Bei Cloud CDN werden diese Back-Ends auch als Ursprungsserver bezeichnet. Abbildung 1 zeigt, wie Antworten von Ursprungsservern, die auf VM-Instanzen ausgeführt werden, über einen externen Application Load Balancer übertragen werden, bevor sie von Cloud CDN bereitgestellt werden. In diesem Fall besteht das Google Front End (GFE) aus Cloud CDN und dem externen Application Load Balancer.
Wie funktioniert Cloud CDN?
Wenn ein Nutzer Inhalte von einem externen Application Load Balancer anfordert, geht die Anfrage an einem Google-Frontend (GFE) ein, das sich am Rand eines Google-Netzwerks in größtmöglicher Nähe zum Nutzer befindet.
Wenn die URL-Zuordnung des Load-Balancers Traffic an einen Backend-Dienst oder Backend-Bucket weiterleitet, für den Cloud CDN konfiguriert ist, verwendet das GFE Cloud CDN.
Cache-Treffer und Cache-Fehler
Ein Cache ist eine Gruppe von Servern, die Inhalte speichert und verwaltet, damit zukünftige Anfragen für diesen Inhalt schneller bearbeitet werden können. Der im Cache gespeicherte Inhalt ist eine Kopie von im Cache speicherbarem Inhalt, der auf Ursprungsservern gespeichert wird.
Wenn das GFE im Cloud CDN-Cache sucht und eine im Cache gespeicherte Antwort auf die Anfrage des Nutzers findet, sendet das GFE die im Cache gespeicherte Antwort an den Nutzer. Dies wird als Cache-Treffer bezeichnet. Wenn ein Cache-Treffer auftritt, sucht das GFE den Inhalt anhand seines Cache-Schlüssels und antwortet dem Nutzer direkt. Dadurch wird die Umlaufzeit verkürzt und braucht der Ursprungsserver die Anfrage nicht zu verarbeiten.
Ein Teiltreffer tritt auf, wenn eine Anfrage teilweise aus dem Cache und teilweise von einem Backend verarbeitet wird. Dies kann auftreten, wenn nur ein Teil des angeforderten Inhalts in einem Cloud CDN-Cache gespeichert ist, wie unter Unterstützung von Bytebereichsanfragen beschrieben.
Wenn ein Inhalt zum ersten Mal angefordert wird, stellt das GFE fest, dass es die Anfrage aus dem Cache nicht erfüllen kann. Das wird als Cache-Fehler bezeichnet. Wenn ein Cache-Fehler auftritt, leitet das GFE die Anfrage an den externen Application Load Balancer weiter. Der Load-Balancer leitet die Anfrage dann an einen der Ursprungsserver weiter. Wenn der Cache den Inhalt empfängt, leitet das GFE den Inhalt an den Nutzer weiter.
Wenn die Antwort des Ursprungsservers auf diese Anfrage im Cache speicherbar ist, speichert Cloud CDN die Antwort für zukünftige Anfragen im Cloud CDN-Cache. Den Datentransfer von einem Cache zu einem Kunden bezeichnet man als Cache-Ausgang. Die Datenübertragung in einen Cache bezeichnet man als Cache-Füllung.
Abbildung 2 zeigt einen Cache-Treffer und einen Cache-Fehler:
- Auf VM-Instanzen ausgeführte Ursprungsserver senden HTTP(S)-Antworten.
- Der externe Application Load Balancer verteilt die Antworten an Cloud CDN.
- Cloud CDN liefert die Antworten für Endnutzer.
Die Kosten im Zusammenhang mit Cache-Treffern und Cache-Fehlern finden Sie unter Preise.
Cache-Trefferquote
Die Cache-Trefferquote gibt an, wie häufig ein angefordertes Objekt vom Cache bereitgestellt wird. Beträgt die Cache-Trefferquote 60 %, wird das Objekt in 60 % der Fälle vom Cache bereitgestellt und muss zu 40 % aus dem Ursprung abgerufen werden.
Informationen zur Auswirkung von Cache-Schlüsseln auf die Cache-Trefferquote finden Sie unter Cache-Schlüssel verwenden. Informationen zur Fehlerbehebung finden Sie unter Niedrige Cache-Trefferquote.
Cache-Trefferquote für einen kurzen Zeitraum ansehen
So zeigen Sie die Cache-Trefferquote für einen kurzen Zeitraum (die letzten Minuten) an:
Wechseln Sie in der Google Cloud Console zur Seite Cloud CDN.
Informationen zu jedem Ursprung finden Sie in der Spalte Cache-Trefferquote.
n/a bedeutet, dass der Inhalt mit Load-Balancing momentan nicht im Cache gespeichert oder in letzter Zeit nicht angefordert wurde.
Cache-Trefferquote für einen längeren Zeitraum ansehen
So rufen Sie die Cache-Trefferquote für einen bestimmten Zeitraum von 1 Stunde bis 30 Tage ab:
- Wechseln Sie in der Google Cloud Console zur Seite Cloud CDN.
- Klicken Sie in der Spalte Ursprungsname auf den Ursprungsnamen.
- Klicken Sie auf den Tab Monitoring.
- Optional: Wählen Sie ein bestimmtes Backend aus.
Die CDN-Trefferquote ist eine der verfügbaren Monitoring-Grafiken. Eine Grafik mit der Angabe – bedeutet, dass der Inhalt nicht im Cache gespeichert wurde oder nicht im angezeigten Zeitraum angefordert wurde.
Sie können die Zeit anpassen, indem Sie einen anderen Zeitraum auswählen. Die folgende Abbildung ist ein Beispiel für ausgewählte Zeiträume:
Inhalte in den Cache einfügen
Caching ist reaktiv in dem Sinne, dass ein Objekt in einem bestimmten Cache gespeichert wird, wenn eine Anfrage diesen Cache durchläuft und wenn die Antwort im Cache speicherbar ist. Ein in einem Cache gespeichertes Objekt wird nicht automatisch in andere Caches kopiert. Zur Cache-Füllung kommt es nur bei einer vom Client ausgelösten Anfrage. Sie können Caches nicht im Voraus laden, es sei denn, Sie lassen die einzelnen Caches auf Anfragen antworten.
Wenn der Ursprungsserver Bytebereichsanfragen unterstützt, kann Cloud CDN als Antwort auf eine einzelne Clientanfrage mehrere Cache-Füllanfragen starten.
Inhalte aus einem Cache bereitstellen
Nach der Aktivierung von Cloud CDN erfolgt das Caching für alle im Cache speicherbaren Inhalte automatisch. Ihr Ursprungsserver verwendet HTTP-Header, um anzuzeigen, welche Antworten im Cache gespeichert werden. Sie können die Cache-Fähigkeit auch mithilfe von Cache-Modi steuern.
Wenn Sie einen Backend-Bucket verwenden, ist Cloud Storage der Ursprungsserver. Falls Sie VM-Instanzen verwenden, ist der Ursprungsserver die Webserver-Software, die Sie auf diesen Instanzen ausführen.
Cloud CDN verwendet Caches an zahlreichen Standorten auf der ganzen Welt. Aufgrund der Art von Caches ist es nicht möglich, vorherzusehen, ob eine bestimmte Anfrage außerhalb des Caches bedient wird. Sie können jedoch davon ausgehen, dass häufig auftretende Anfragen für im Cache speicherbare Inhalte meistens vom Cache bedient werden, was zu deutlich geringeren Latenzen, Kosten und Lasten bei Ihren Servern führt.
Unter Caching finden Sie zusätzliche Informationen zu den Daten, die Cloud CDN im Cache speichert, und zum Zeitraum, für den sie gespeichert werden.
Sie können Logs ansehen, um zu erfahren, welche Inhalte Cloud CDN aus dem Cache bereitstellt.
Inhalte aus dem Cache entfernen
Wenn Sie ein Element aus einem Cache entfernen möchten, können Sie die im Cache gespeicherten Inhalte entwerten. Weitere Informationen finden Sie hier:
Cache umgehen
Wenn Sie Cloud CDN umgehen möchten, können Sie ein Objekt direkt aus einem Cloud Storage-Bucket oder einer Compute Engine-VM anfordern. Die URL für ein Objekt in einem Cloud Storage-Bucket sieht zum Beispiel so aus:
https://storage.googleapis.com/STORAGE_BUCKET/FILENAME
Bereinigung und Ablauf
Damit Inhalte aus einem Cache bereitgestellt werden können, müssen Sie in den Cache eingefügt worden sein und dürfen weder entfernt noch abgelaufen sein.
Bereinigung und Ablauf sind zwei verschiedene Konzepte. Sie beeinflussen beide, was bereitgestellt wird, aber sie beeinflussen sich nicht direkt gegenseitig.
Bereinigung
Wenn Sie das Caching von Inhalten mit einer kleinen Anzahl von Anfragen testen, stellen Sie möglicherweise fest, dass der Inhalt entfernt wird.
Die Aufnahmekapazitäten von Caches sind begrenzt. Cloud CDN fügt Caches jedoch auch dann Inhalte hinzu, wenn sie voll sind. Damit Inhalte in einen vollen Cache eingefügt werden können, entfernt der Cache zuerst andere Inhalte, um Platz zu schaffen. Das wird Bereinigung genannt. Caches sind in der Regel voll, sodass ständig Inhalte entfernt werden. Im Allgemeinen bereinigen sie Inhalte, auf die in letzter Zeit nicht zugegriffen wurde, unabhängig von deren Ablaufzeit. Es kann somit sein, dass der bereinigte Inhalt möglicherweise noch nicht abgelaufen war. Eine festgelegte Ablaufzeit wirkt sich nicht auf die Bereinigung aus.
Selten genutzte Inhalte sind Inhalte, auf die seit einiger Zeit nicht mehr zugegriffen wurde. Seit einiger Zeit und selten genutzt beziehen sich beide auf den Großteil der anderen Elemente im Cache. Mehrere Google Cloud-Projekte teilen sich einen gemeinsamen Cache-Pool, da die Projekte über denselben GFE-Satz bereitgestellt werden. Die relative Population von Inhalten wird über mehrere Projekte hinweg und nicht nur innerhalb eines einzelnen Projekts verglichen.
Wenn Caches mehr Traffic erhalten, werden auch mehr zwischengespeicherte Inhalte bereinigt.
Wie bei allen großen Caches können Inhalte unvorhersehbar bereinigt werden. Aus diesem Grund kann nicht garantiert werden, dass jede Anfrage aus dem Cache bereitgestellt werden kann.
Ablauffrist
Inhalte in HTTP(S)-Caches können eine konfigurierbare Ablaufzeit haben. Die Ablaufzeit weist den Cache an, keine alten Inhalte bereitzustellen, auch wenn der Inhalt nicht bereinigt wurde.
Stellen Sie sich beispielsweise eine URL des Bilds der Stunde vor. Die Antworten sollten innerhalb einer Stunde ablaufen. Andernfalls kann es sich bei dem bereitgestellten Inhalt um ein altes Bild aus einem Cache handeln.
Informationen zum Anpassen von Ablaufzeiten finden Sie unter TTL-Einstellungen und -Überschreibungen verwenden.
Von Cloud CDN initiierte Anfragen
Wenn Ihr Ursprungsserver Bytebereichsanfragen unterstützt, kann Cloud CDN als Antwort auf eine einzelne Clientanfrage mehrere Anfragen an Ihren Ursprungsserver senden. Wie in Von Cloud CDN initiierte Anfragen beschrieben, kann Cloud CDN zwei Arten von Anfragen initiieren: Validierungsanfragen und Bytebereichsanfragen.
Einstellungen für den Speicherort von Daten anderer Cloud Platform-Dienste
Durch die Nutzung von Cloud CDN können Daten an Bereitstellungsspeicherorten außerhalb der Region oder Zone Ihres ursprünglichen Servers gespeichert werden. Dies ist normal und entspricht dem Funktionsprinzip des HTTP-Cachings im Internet. Unter den dienstspezifischen Nutzungsbedingungen der Nutzungsbedingungen für die Google Cloud Platform gelten die Einstellungen für den Speicherort von Daten, die für bestimmte Cloud Platform-Dienste verfügbar sind, nicht für die grundlegenden Kundendaten für den entsprechenden Cloud Platform-Dienst, wenn dieser mit anderen Google-Produkten und -Diensten verwendet wird (in diesem Fall mit dem Cloud CDN-Dienst). Wenn Sie dies nicht wünschen, verwenden Sie den Cloud CDN-Dienst nicht.
Unterstützung für SSL-Zertifikate, die von Google verwaltet werden
Wenn Cloud CDN aktiviert ist, können Sie von Google verwaltete SSL-Zertifikate verwenden.
Google Cloud Armor mit Cloud CDN
Google Cloud Armor mit Cloud CDN bietet zwei Arten von Sicherheitsrichtlinien:
- Edge-Sicherheitsrichtlinien Diese Richtlinien können auf Ihre Cloud CDN-fähigen Ursprungsserver angewendet werden. Sie gelten für den gesamten Traffic vor der CDN-Suche.
- Back-End-Sicherheitsrichtlinien Diese Richtlinien werden nur für Anfragen von dynamischem Inhalt, Cache-Fehler oder andere Anfragen erzwungen, die für Ihren Ursprungsserver bestimmt sind.
Weitere Informationen finden Sie in der Dokumentation zum Google Cloud-Support.
Nächste Schritte
- Informationen zum Aktivieren von Cloud CDN für Ihre HTTP(S)-Instanz mit Load-Balancing und Storage-Buckets finden Sie unter Cloud CDN verwenden.
- Informationen zur Verwendung von Cloud CDN mit Google Kubernetes Engine finden Sie unter Cloud CDN über eingehenden Traffic konfigurieren.
- Informationen zu GFE-Points-of-Presence finden Sie unter Cache-Speicherorte.