HTTP/2 Server Push verwijderen uit Chrome

In navolging van de vorige aankondiging wordt de ondersteuning van HTTP/2 Server Push in de volgende releases standaard uitgeschakeld in Chrome 106 en andere op Chromium gebaseerde browsers.

Waarom wordt dit verwijderd?

Met HTTP/2 Server Push konden websites proactief bronnen verzenden die de pagina nodig had, in plaats van te wachten tot deze werden aangevraagd. Het was echter problematisch, zoals Jake Archibald eerder schreef , en de prestatievoordelen waren vaak moeilijk te realiseren. Als gevolg hiervan werd het niet veel gebruikt: slechts 1,25% van de HTTP/2-sites maakte gebruik van deze functie.

Analyse van het gebruik van HTTP/2 Server Push heeft gemengde resultaten opgeleverd ( Chrome , Akamai ), zonder duidelijke netto prestatiewinst en in veel gevallen prestatieregressies.

Push is in veel HTTP/3-servers en -clients niet geïmplementeerd, ook al was dit wel in de specificatie opgenomen. Voor een groot deel van het web dat het nieuwere HTTP/3 gebruikt , is Push feitelijk al buiten gebruik gesteld. Wanneer we die analyse recentelijk opnieuw uitvoeren, zien we dat de HTTP/2-ondersteuning van 1,25% door sites is gedaald naar 0,7%.

Alternatieven voor HTTP/2 Server Push

103 Early Hints is een veel minder foutgevoelig alternatief met veel van dezelfde voordelen als Push, en veel minder nadelen. In plaats van dat de server bronnen pusht, stuurt 103 Early Hints alleen hints naar de browser van bronnen waar deze mogelijk baat bij heeft als deze onmiddellijk wordt opgevraagd. Hierdoor heeft de browser de controle over de vraag of deze deze wel of niet nodig heeft, bijvoorbeeld of deze bronnen al in de HTTP-cache staan.

Het vooraf laden van kritieke bronnen is een ander alternatief waarmee de pagina en de browser kunnen samenwerken om vroegtijdig kritieke bronnen preventief te laden tijdens het laden van de pagina. Hoewel dit vereist dat de pagina zelf eerst wordt verzonden (en dus niet zo snel is als Server Push of Early Hints), heeft het het extra voordeel dat de kritieke paginabron niet wordt vertraagd, wat bij beide oplossingen kan gebeuren.

Conclusie

Het internet moet dingen kunnen proberen en weggooien als ze niet worden gebruikt. Hoewel het potentieel van Push groot klonk, was het gebruik ervan in werkelijkheid problematischer dan gedacht. We hebben echter veel van Push geleerd bij het ontwerp van 103 Early Hints. Nu is het tijd om de voortgang te voltooien en af ​​te stappen van Push.

Dankbetuigingen

Heldenafbeelding door Scott Rodgerson op Unsplash