Zum Hauptinhalt springen

4.15. Verwendung von Server Push

4.15. Verwendung von Server Push

HTTP/2 [HTTP/2] führte Server Push ein, das es Servern ermöglicht, Antworten an Clients zu senden, ohne auf eine Anfrage zu warten. Dies kann die Leistung verbessern, indem Server proaktiv Ressourcen senden können, die der Client wahrscheinlich benötigen wird.

Server Push hat sich jedoch in der Praxis als schwierig erwiesen, effektiv einzusetzen. Es erfordert sorgfältige Berücksichtigung von:

  • Welche Ressourcen gepusht werden sollen.

  • Wann sie gepusht werden sollen.

  • Wie vermieden werden kann, Ressourcen zu pushen, die der Client bereits hat.

  • Wie mit Caching koordiniert wird.

Infolgedessen wird Server Push nicht weit verbreitet genutzt, und die Unterstützung dafür wurde von einigen Browsern entfernt. HTTP/3 [HTTP/3] enthält keinen Server Push.

Anwendungen, die Server Push verwenden möchten, SOLLTEN:

  • Sorgfältig bewerten, ob Push tatsächlich die Leistung für ihren Anwendungsfall verbessern wird.

  • Alternativen wie Inlining von Ressourcen oder Verwendung von Early Hints [RFC8297] in Betracht ziehen.

  • Auf Clients vorbereitet sein, die gepushte Ressourcen nicht unterstützen oder akzeptieren.

  • Klar angeben, wann und welche Ressourcen gepusht werden.

Angesichts der begrenzten Akzeptanz und Unterstützung für Server Push SOLLTEN Anwendungen dies NICHT für einen korrekten Betrieb erfordern.