Erhöhen des Anteils der Anforderungen, die direkt von den CloudFront-Caches bereitgestellt werden (Cache-Trefferrate) - Amazon CloudFront

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erhöhen des Anteils der Anforderungen, die direkt von den CloudFront-Caches bereitgestellt werden (Cache-Trefferrate)

Sie können die Leistung verbessern, indem Sie den Anteil an Viewer-Anforderungen erhöhen, die direkt vom CloudFront-Cache bereitgestellt werden, anstatt für Inhalte auf Ihre Ursprungs-Server zurückzugreifen. Dies ist als Verbesserung der Cache-Trefferquote bekannt.

In den folgenden Abschnitten wird erläutert, wie Sie die Cache-Trefferrate erhöhen.

Festlegen der Dauer der Zwischenspeicherung Ihrer Objekte in CloudFront

Um Ihre Cache-Zugriffsrate zu erhöhen, können Sie Ihren Ursprung so konfigurieren, dass eine Cache-Control-Max-Age-Richtlinie zu Ihren Objekten hinzugefügt wird, und den längsten Gebrauchswert für max-age festlegen. Je kürzer die Cache-Dauer ist, desto häufiger sendet CloudFront Anforderungen an Ihren Ursprung, um festzustellen, ob sich ein Objekt geändert hat, und um die neueste Version zu erhalten. Sie können die max-age mit den stale-while-revalidate- und stale-if-error-Anweisungen hinzufügen, um die Cache-Trefferquote unter bestimmten Bedingungen weiter zu verbessern. Weitere Informationen finden Sie unter Verwalten der Dauer, die Inhalte im Cache bleiben (Ablauf).

Verwenden von Origin Shield

CloudFront Origin Shield kann dazu beitragen, das Cache-Trefferverhältnis Ihrer CloudFront-Verteilung zu verbessern, da Ihrem Ursprung eine zusätzliche Cache-Ebene vorlagert. Wenn Sie Origin Shield verwenden, stammen alle Anforderungen von allen CloudFront-Caching-Layern an Ihren Ursprung von einem einzigen Speicherort. CloudFront kann jedes Objekt mit einer einzigen Ursprungsanforderung aus Origin Shield abrufen und alle anderen Ebenen des CloudFront-Caches (Edge-Standorte und regionale Edge-Caches) können das Objekt aus Origin Shield abrufen.

Weitere Informationen finden Sie unter Verwenden Sie Amazon CloudFront Origin Shield.

Zwischenspeichern auf der Grundlage von Abfragezeichenfolgeparametern

Wenn Sie CloudFront so konfigurieren, dass die Zwischenspeicherung auf der Grundlage von Abfragezeichenfolgeparametern erfolgt, lässt sich die Zwischenspeicherung folgendermaßen verbessern:

  • Konfigurieren Sie CloudFront so, dass nur die Abfragezeichenfolgeparameter weitergeleitet werden, für die der Ursprung eindeutige Objekte zurückgibt.

  • Verwenden Sie die gleiche Schreibweise (Groß- oder Kleinschreibung) für alle Instances desselben Parameters. Wenn beispielsweise eine Anforderung parameter1=A und eine andere parameter1=a enthält, leitet CloudFront separate Anforderungen an Ihren Ursprung weiter, wenn eine Anforderung parameter1=A enthält und wenn eine Anforderung parameter1=a enthält. CloudFront speichert die von Ihrem Ursprung zurückgegebenen entsprechenden Objekte dann separat zwischen, auch wenn die Objekte identisch sind. Wenn Sie nur A oder a verwenden, leitet CloudFront weniger Anforderungen an Ihren Ursprung weiter.

  • Listen Sie Parameter in der gleichen Reihenfolge auf. Wenn eine Anforderung für ein Objekt die Abfragezeichenfolge parameter1=a&parameter2=b und eine weitere Anforderung für dasselbe Objekt parameter2=b&parameter1=a enthält, gibt wie bei den Unterschieden in der Schreibweise auch hier, dass CloudFront beide Anforderungen an Ihren Ursprung weiterleitet und die entsprechenden Objekte separat zwischenspeichert, auch wenn sie identisch sind. Wenn Sie immer die gleiche Reihenfolge für Parameter verwenden, leitet CloudFront weniger Anforderungen an Ihren Ursprung weiter.

Weitere Informationen finden Sie unter Zwischenspeichern von Inhalten auf der Grundlage von Abfragezeichenfolgeparametern. Wenn Sie die Abfragezeichenfolgen überprüfen möchten, die CloudFront an Ihren Ursprung weiterleitet, sehen Sie sich die Werte in der Spalte cs-uri-query in Ihren CloudFront-Protokolldateien an. Weitere Informationen finden Sie unter Zugriffsprotokolle (Standardprotokolle).

Zwischenspeichern auf der Grundlage von Cookie-Werten

Wenn Sie CloudFront so konfigurieren, dass die Zwischenspeicherung auf der Grundlage von Cookie-Werten erfolgt, lässt sich die Zwischenspeicherung folgendermaßen verbessern:

  • Konfigurieren Sie CloudFront so, dass anstatt aller Cookies nur spezifische Cookies weitergeleitet werden. Für die Cookies, für deren Weiterleitung an Ihren Ursprung Sie CloudFront konfigurieren, leitet CloudFront jede Kombination von Cookie-Name und -Wert weiter. Die Objekte, die Ihr Ursprung zurückgibt, werden dann separat gespeichert, auch wenn sie alle identisch sind.

    Nehmen wir beispielsweise an, dass Viewer zwei Cookies in jeder Anfrage einfügen, dass jedes Cookie über drei mögliche Werte verfügt und dass alle Kombinationen von Cookie-Werten möglich sind. CloudFront leitet bis zu neun verschiedene Anforderungen für jedes Objekt an Ihren Ursprung weiter. Wenn Ihr Ursprung verschiedene Versionen eines Objekts auf der Grundlage nur eines dieser Cookies zurückgibt, leitet CloudFront mehr Anforderungen als notwendig an Ihren Ursprung weiter und speichert unnötigerweise mehrere identische Versionen des Objekts zwischen.

  • Erstellen Sie separate Cache-Verhalten für statischen und dynamischen Inhalt und konfigurieren Sie CloudFront so, dass Cookies nur für dynamische Inhalte an Ihren Ursprung weitergeleitet werden.

    Nehmen wir beispielsweise an, dass Sie nur ein Cache-Verhalten für Ihre Verteilung haben und die Verteilung sowohl für dynamische Inhalte, wie beispielsweise .js-Dateien, als auch für .css-Dateien verwenden, die sich nur selten ändern. CloudFront speichert separate Versionen Ihrer .css-Dateien auf der Grundlage der Cookie-Werte zwischen, sodass jeder CloudFront-Edge-Standort eine Anforderung für jeden neuen Cookie-Wert oder jede neue Kombination von Cookie-Werten an Ihren Ursprung weiterleitet.

    Wenn Sie ein Cache-Verhalten erstellen, für welches das Pfadmuster *.css ist und für welches CloudFront nicht auf der Grundlage von Cookie-Werten zwischenspeichert, leitet CloudFront Anforderungen für .css-Dateien nur für die erste Anforderung, die ein Edge-Standort für eine bestimmte .css-Datei empfängt, und für die erste Anforderung nach dem Ablaufen einer .css-Datei an Ihren Ursprung weiter.

  • Erstellen Sie nach Möglichkeit separate Cache-Verhaltensweisen für dynamische Inhalte, wenn Cookie-Werte für jeden Benutzer eindeutig sind (z. B. eine Benutzer-ID), und dynamische Inhalte, die je nach einer geringeren Anzahl eindeutiger Werte variieren.

Weitere Informationen finden Sie unter Zwischenspeichern von Inhalten auf der Grundlage von Cookies. Wenn Sie die Cookies überprüfen möchten, die CloudFront an Ihren Ursprung weiterleitet, sehen Sie sich die Werte in der Spalte cs(Cookie) in Ihren CloudFront-Protokolldateien an. Weitere Informationen finden Sie unter Zugriffsprotokolle (Standardprotokolle).

Zwischenspeichern auf der Grundlage von Anfrage-Headern

Wenn Sie CloudFront so konfigurieren, dass die Zwischenspeicherung auf der Grundlage von Anforderungs-Headern erfolgt, lässt sich die Zwischenspeicherung folgendermaßen verbessern:

  • Konfigurieren Sie CloudFront so, dass die Weiterleitung und Zwischenspeicherung nur auf der Grundlage von spezifischen Headern erfolgt, anstatt auf der Grundlage von allen Headern. Für die Header, die Sie angeben, leitet CloudFront jede Kombination aus Header-Name und -Wert weiter. Die Objekte, die Ihr Ursprung zurückgibt, werden dann separat gespeichert, auch wenn sie alle identisch sind.

    Anmerkung

    CloudFront leitet die in den folgenden Themen angegebenen Header immer an Ihren Ursprung weiter:

    Wenn Sie CloudFront so konfigurieren, dass die Zwischenspeicherung auf der Grundlage von Anforderungs-Headern erfolgt, ändern Sie nicht die von CloudFront weitergeleiteten Header, sondern nur, ob CloudFront Objekte auf der Grundlage der Header-Werte zwischenspeichert.

  • Vermeiden Sie die Zwischenspeicherung auf der Grundlage von Anfrage-Headern mit einer hohen Anzahl von eindeutigen Werten.

    Wenn Sie beispielsweise verschiedene Formate von Images auf der Grundlage des Geräts des Benutzers bereitstellen möchten, sollten Sie CloudFront nicht so konfigurieren, dass die Zwischenspeicherung auf der Grundlage des User-Agent-Headers erfolgt, der eine enorme Anzahl an möglichen Werten aufweist. Konfigurieren Sie CloudFront stattdessen so, dass die Zwischenspeicherung auf der Grundlage der Gerätetyp-Header CloudFront-Is-Desktop-Viewer, CloudFront-Is-Mobile-Viewer, CloudFront-Is-SmartTV-Viewer und CloudFront-Is-Tablet-Viewer erfolgt. Wenn Sie zudem dieselbe Version des Images für Tablets und Desktops zurückgeben, leiten Sie nur den CloudFront-Is-Tablet-Viewer-Header weiter und nicht den CloudFront-Is-Desktop-Viewer-Header.

Weitere Informationen finden Sie unter Zwischenspeichern von Inhalten auf der Grundlage von Anforderungsheadern.

Entfernen des Accept-Encoding-Headers, wenn keine Kompression erforderlich ist

Wenn die Komprimierung nicht aktiviert ist, weil der Ursprung sie nicht unterstützt, CloudFront sie nicht unterstützt oder der Inhalt nicht komprimierbar ist, können Sie die Cache-Trefferquote erhöhen, indem Sie ein Cache-Verhalten in Ihrer Verteilung einem Ursprung zuordnen, der den Custom Origin Header wie folgt festlegt:

  • Header name (Header-Name: Accept-Encoding

  • Header value (Header-Wert): (Frei lassen)

Wenn Sie diese Konfiguration verwenden, entfernt CloudFront den Accept-Encoding-Header aus dem Cache-Schlüssel und schließt den Header nicht in die Ursprungsanforderungen ein. Diese Konfiguration gilt für alle Inhalte, die von CloudFront mit der Verteilung aus diesem Ursprung bereitgestellt werden.

Bereitstellen von Medieninhalten über HTTP

Weitere Informationen zum Optimieren von Video-on-Demand-(VOD)- und Streaming-Videoinhalten finden Sie unter Video-on-Demand und Live-Streaming-Video mit CloudFront.