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 gibt die Frontend-IP-Adressen und ‑Ports an, die Anfragen erhalten, und die Backends, die auf die entsprechenden Anfragen antworten.
Cloud CDN-Inhalte können von verschiedenen Arten von Backends bereitgestellt werden:
Bei Cloud CDN werden diese Backends auch als Ursprungsserver bezeichnet. In Abbildung 1 ist zu sehen, wie Antworten von Ursprungsservern, die auf VM-Instanzen ausgeführt werden, einen externen Application Load Balancer durchlaufen, bevor sie von Cloud CDN bereitgestellt werden. In diesem Fall umfasst das Google Front End (GFE) Cloud CDN und den externen Application Load Balancer.
Wie funktioniert Cloud CDN?
Wenn ein Nutzer Inhalte von einem externen Application Load Balancer anfordert, geht die Anfrage bei einem 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 der Ursprungsserver braucht die Anfrage nicht zu verarbeiten.
Ein Teiltreffer tritt auf, wenn eine Anfrage teilweise aus dem Cache und teilweise von einem Backend beantwortet wird. Dies kann auftreten, wenn nur ein Teil des angeforderten Inhalts in einem Cloud CDN-Cache gespeichert ist, wie unter Unterstützung für 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 Ihrer 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. Die Datenübertragung von einem Cache zu einem Client wird als ausgehender Cache-Traffic, die Datenübertragung in einen Cache als Cache-Füllung bezeichnet.
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 rufen Sie die Cache-Trefferquote für einen kurzen Zeitraum (die letzten Minuten) ab:
Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
Informationen zu jedem Ursprung finden Sie in der Spalte Cache-Trefferquote.
– bedeutet, dass der Inhalt mit Load Balancing momentan nicht im Cache gespeichert ist 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 Tagen ab:
- Rufen Sie in der Console von Google Cloud die Seite Cloud CDN auf.
- 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 Monitoringgrafiken. Eine Grafik mit der Angabe – bedeutet, dass der Inhalt nicht im Cache gespeichert ist oder im angezeigten Zeitraum nicht angefordert wurde.
Sie können die Zeit anpassen, indem Sie einen anderen Zeitraum auswählen. Die folgende Abbildung ist ein Beispiel für auswählbare 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 dieselbe Gruppe von GFEs bedient werden. Die relative Beliebtheit von Inhalten wird über mehrere Projekte hinweg und nicht nur innerhalb eines einzelnen Projekts verglichen.
Wenn Caches mehr Traffic erhalten, werden auch mehr im Cache gespeicherte 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.
Einbindung in Google Cloud Armor
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.
- Backend-Sicherheitsrichtlinien. Diese Richtlinien werden nur für Anfragen nach dynamischen Inhalten, Cache-Fehler oder andere Anfragen erzwungen, die für Ihren Ursprungsserver bestimmt sind.
Weitere Informationen finden Sie in der Cloud Armor-Dokumentation.
Einbindung in Service Extensions
Mit Cloud CDN können Sie benutzerdefinierten Code in den Anfrageverarbeitungspfad globaler externer Application Load Balancer einfügen. Dazu verwenden Sie Service Extensions-Edge-Erweiterungen. Mit diesen Erweiterungen können Sie vor dem Caching Anpassungen im Anfragepfad implementieren und beeinflussen, wie Inhalte in Cloud CDN im Cache gespeichert werden. Dieses Feature ist eine Vorabversion.
Weitere Informationen finden Sie unter Service Extensions für Edge-Computing verwenden.
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.