undefined Vývojári prehliadača Chrome oznámili, že majú v úmysle prestať podporovať mechanizmus Server push v protokoloch HTTP / 2 a gQUIC, a tiež neimplementovať ho pre protokol HTTP / 3, ktorý je vo fáze štandardného schvaľovania. Technológia Server Push nie je v protokole HTTP / 1.1 poskytovaná od samého začiatku.
Dôvod eliminácie je túžba zbaviť sa veľkej komplikácie v kóde, v kontexte nedostatku dopytu a iba teoretických predpokladov účinnosti optimalizácie založenej na serverových push.
Technológia Push servera je definovaný v štandarde HTTP / 2 a zameriava sa na optimalizáciu načítania údajov.
Okrem prehľadávačov založených na engine Chromium je v súčasnosti implementovaná podpora servera Push vo Firefoxoch a Safari a na strane servera v nginx a Apache httpd.
Pomocou servera Push, server môže posielať prostriedky klientovi bez čakania na vašu výslovnú požiadavku. Predpokladá sa, že týmto spôsobom môže server urýchliť načítanie stránky, pretože súbory CSS, skripty a obrázky potrebné na vykreslenie stránky sa už na požiadanie klienta prenesú na jeho stranu.
Klient sa pripojí a požiada o konkrétnu stránku, potom server na základe svojej konfigurácie alebo obsahu hlavičky odkazu odoslaného klientom inicializuje prenos určitých zdrojov prostredníctvom už vytvoreného spojenia HTTP / 2 bez toho, aby čakal na požiadavku na tieto zdroje zo strany klienta. .
Obsah prenášaný prostredníctvom push hovoru je na strane klienta uložený v špeciálnej vyrovnávacej pamäti spojenej s aktuálnym pripojením HTTP / 2.
Keď v priebehu vykresľovania stránky klient dosiahne požiadavku na zdroje s tým spojené (css, js, obrázky atď.), pred skutočným odoslaním každej žiadosti sa vykoná kontrola vyrovnávacej pamäte. Ak prostriedok už bol serverom prenesený a je v pamäti cache, klient uvoľní tento prostriedok z lokálnej pamäte cache bez vykonania externej požiadavky na server.
HTTP / 3 je kvázi-RFC protokol, ktorý tiež definuje push servera.
Prehliadač Chrome v súčasnosti podporuje spracovanie prenosov push cez HTTP / 2 a gQUIC. Zámerom je odstrániť podporu pre oba protokoly. Prehliadač Chrome nepodporuje prenos cez protokol HTTP / 3 a pridanie podpory nie je v pláne.
Údržba takejto pamäte cache veľmi komplikuje implementáciu Server Push na strane klienta, ale nevedie to k znateľnej akcelerácii načítania v porovnaní s preventívnym požiadavkom na prostriedky prostredníctvom značky „preload“ a podľa niektorých štúdií dokonca zvyšuje latenciu.
Podľa štatistík Google Technológia Server Push nebola správne distribuovaná. Napríklad za posledných 28 dní 99,95% pripojení HTTP / 2 nepoužilo Server Push. Podobné ukazovatele boli pozorované počas štúdie v júni 2019, to znamená, že nedošlo k žiadnemu nárastu nasadenia Server Push.
Aj tento rok používal prehliadač iba 40% správ prijatých serverom Push a pred dvoma rokmi to bolo 63,51% (nespracované správy boli nesprávne, nezodpovedali spracovanej stránke alebo sa už nachádzali v pamäti cache) .
Namiesto Server Push optimalizujte zaťaženie stránky, zamýšľa značku použiť , na základe ktorého môže prehliadač požadovať zdroj bez toho, aby čakal na jeho použitie na stránke.
Na jednej strane vedie predbežné načítanie v porovnaní so serverovým tlačením k zbytočnej výmene paketov (RTT), na druhej strane však bráni odosielaniu prostriedkov, ktoré sa už nachádzajú v pamäti cache prehliadača.
Všeobecne sa rozdiely v latencii pri použití serverového push a predbežného načítania považujú za zanedbateľné. Okrem optimalizácie zaťaženia zdrojov je možné na prenos údajov zo servera do klienta použiť aj mechanizmus Server Push, ale na tento účel je vhodnejší protokol WebTransport (založený na QUIC), ktorého štandardizácia je vo fáze návrhu ...
Fuente:https://groups.google.com