a különböző erőforrás-gyűjtemények kinyerési módszereinek teljesítményvizsgálatának eredményei, a HTTP/1.1, HTTP/2 és HTTP/2 + Server Push protokollok segítségével a szerverhez való kapcsolódáskor. A kutatás során értékelték a böngésző cacheében levő kért adatok hatását teljesítményre, valamint az erőforrások kezelését az alkalmazás logikai szintjén (erőforrások egyetlen JSON-blokká való egyesítése).
A 25 kérés teljesítményének tesztelése általában megjósolható eredményeket hozott - a HTTP/1.1-en keresztül történő kérés jelentős hátránya üres cache esetén, és az erőforrások egyetlen blokkban való átadása (tesztjeink a „compound” címkével). A Firefox és a Chrome teljesítménye nagyjából azonos szinten volt, de a cache-ben lévő adatok nem hozták a várt hatékonyságnövekedést.
Azonban a 500 kérés feldolgozási teszt során a Chrome észlelhető hátrányba került a Firefoxhoz képest, amikor nagy számú kérés átadására került sor, míg a Firefox hátrányba került a Chrome előtt a Server Push mechanizmus alkalmazása, és HTTP/2 használatakor, amikor a böngésző cacheében széleskörű adatok voltak. A Chrome hatékonyabban kezelte a cache-t, míg a Firefox hatékonyabb volt a külső kérések feldolgozásában.
A tesztek alapján megállapították, hogy a HTTP/2 viszonylag hatékonyan képes kezelni egy nagy erőforrás-gyűjtemény elkülönített kéréseit. Az egyszerű, elkülönített erőforrás-átadási séma teljesítménye és az aggregált blokkokba való összefogás közötti eltérések nem elég jelentősek ahhoz, hogy indokolják az alkalmazás oldalán a feldolgozási logika jelentős bonyolítását, és a szerver. Az aggregálás csak olyan helyzetekben indokolt, ahol a teljesítmény a legfőbb prioritás. Amikor a logika egyszerűsítése és az egyszerű API fontosabb, érdemes elkülönített erőforrás-feldolgozást alkalmazni.
Egy másik megállapítás, hogy a böngésző gyorsítótár használata HTTP/2 mellett nem gyakorol jelentős hatást a kéréskezelési teljesítményre (a 501-es kérés teljes végrehajtása 1,2-szer lassabb volt a 90%-ban megtöltött gyorsítótár esetén a Firefox alatt és 2,3-szor a Chrome alatt a 51-es kéréshez képest). A Server Push használata nem mutatott lényeges előnyöket a Firefox-ban, de hatékony volt nagy számú erőforrás betöltésekor a Chrome-ban. A kutatók emellett megjegyezték, hogy a szerveroldali optimalizálás sokkal nagyobb hatással van a teljesítményre, mint a böngészőben végrehajtott klienskód optimalizálása.
Forrás: opennet.ru
