Origin-Agent-Cluster

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Der HTTP Origin-Agent-Cluster Antwortheader wird verwendet, um zu verlangen, dass das zugehörige Document in einem herkunftsschlüsselten Agent-Cluster platziert wird. Das bedeutet, dass Betriebssystemressourcen (zum Beispiel der Betriebssystemprozess), die zur Auswertung des Dokuments verwendet werden, nur mit anderen Dokumenten derselben Herkunft geteilt werden sollten.

Der Effekt ist, dass ein ressourcenintensives Dokument die Leistung von Dokumenten anderer Herkunft weniger wahrscheinlich verschlechtert.

Header-Typ Antwortheader
Verbotener Header-Name Nein

Syntax

http
Origin-Agent-Cluster: <boolean>

Direktiven

<boolean>

?1 zeigt an, dass das zugehörige Document in einem herkunftsschlüsselten Agent-Cluster platziert werden sollte. Andere Werte als ?1 werden ignoriert (z.B. das ?0 strukturierte Feld für false).

Beschreibung

Moderne Webbrowser haben eine Mehrprozessarchitektur, in der Seiten von verschiedenen Herkünften in unterschiedlichen Betriebssystemprozessen ausgeführt werden können. Das ist wichtig für die Leistung, weil es bedeutet, dass eine ressourcenintensive Seite nicht so stark auf andere Seiten einwirkt, die der Benutzer geöffnet hat.

Browser können jedoch im Allgemeinen keine gleichseitigen, herkunftsübergreifenden Seiten in verschiedenen Prozessen ausführen, aufgrund bestimmter DOM-APIs, die von gleichseitiger, herkunftsübergreifender Kommunikation abhängen. Zum Beispiel werden Seiten von den folgenden zwei Herkünften standardmäßig die gleichen Betriebssystemressourcen teilen:

https://apples.example.org
https://oranges.example.org

Durch das Setzen des Origin-Agent-Cluster Headers kann eine Seite verlangen, dass der Browser dieser Herkunft dedizierte Ressourcen zuweist, die mit keiner anderen Herkunft geteilt werden.

Der Browser ist nicht verpflichtet, der Anfrage nachzukommen. Wenn er es tut, gibt die Window.originAgentCluster Eigenschaft true zurück, und das Fenster kann die folgenden Aktionen, die alle auf gleichseitige, herkunftsübergreifende Kommunikation angewiesen sind, nicht ausführen:

Herkunftsschlüsselte Agent-Cluster sollten nicht als Sicherheitsfunktion betrachtet werden: Browser können die Anfrage aus verschiedenen Gründen ignorieren oder wählen, sie auf eine Weise zu implementieren, die keinen Speicherschutz bietet (zum Beispiel durch Verwendung von separaten Threads anstelle von separaten Prozessen). Stattdessen ist dieses Feature ein Hinweis darauf, dass das Benutzererlebnis verbessert würde, wenn dieser Herkunft dedizierte Ressourcen zugewiesen würden.

Nehmen Sie beispielsweise an, Ihre Seite enthält eine Seite von einer Herkunft, die ein gleichseitiges, herkunftsübergreifendes iframe einbettet, welches ein ressourcenintensives Spiel ausführt. Durch das Setzen von Origin-Agent-Cluster auf dem Dokument im iframe können Sie verhindern, dass das Spiel die Leistung der Hauptseite beeinträchtigt.

Der Browser stellt sicher, dass alle Seiten von einer gegebenen Herkunft entweder herkunftsbezogen sind oder nicht. Das bedeutet:

  • Wenn die erste Seite von einer Herkunft den Header nicht setzt, dann werden keine anderen Seiten von dieser Herkunft herkunftsbezogen sein, auch wenn diese anderen Seiten den Header setzen.
  • Wenn die erste Seite von einer Herkunft den Header setzt und herkunftsbezogen ist, dann werden alle anderen Seiten von dieser Herkunft herkunftsbezogen sein, unabhängig davon, ob sie es verlangen oder nicht.

Um solch eine unvorhersehbare Situation zu vermeiden, sollten Sie diesen Header für alle Seiten von einer gegebenen Herkunft setzen oder für keine davon.

Beispiele

http
Origin-Agent-Cluster: ?1

Spezifikationen

Specification
HTML
# origin-agent-cluster

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Origin-Agent-Cluster
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.

Siehe auch