Comparația performanței HTTP/1.1, HTTP/2 și HTTP/2 + Server Push

Publicat rezultatele studierii performanței diferitelor metode de recuperare a unei colecții de resurse folosind protocoalele HTTP/1.1, HTTP/2 și HTTP/2 + Server Push pentru a accesa serverul. Studiul a evaluat, de asemenea, impactul asupra performanței al găsirii datelor solicitate în memoria cache a browserului și al manipulării resurselor la nivelul logicii aplicației (reducerea resurselor într-un singur bloc JSON).

Testarea performanței a 25 de solicitări a arătat rezultate în general previzibile - o întârziere notabilă a unei cereri prin HTTP/1.1 cu un cache gol și un avans în utilizarea resurselor într-un singur bloc (testele etichetate „compus”). Performanța Firefox și Chrome a fost aproximativ aceeași, dar prezența datelor în cache nu a dus la creșterea așteptată a eficienței.

 Comparația performanței HTTP/1.1, HTTP/2 și HTTP/2 + Server Push

Dar în testul de procesare a 500 de solicitări, a apărut un decalaj sesizabil între Chrome și Firefox la transmiterea unui număr mare de solicitări și un decalaj între Firefox și Chrome la utilizarea mecanismului Server Push și în situația utilizării HTTP/2 cu majoritatea datele din memoria cache a browserului. Chrome a arătat o gestionare mai eficientă a memoriei cache, iar Firefox a gestionat mai eficient solicitările externe.

 Comparația performanței HTTP/1.1, HTTP/2 și HTTP/2 + Server Push

 Comparația performanței HTTP/1.1, HTTP/2 și HTTP/2 + Server Push

Rezultatele testelor au concluzionat că HTTP/2 permite procesarea destul de eficientă a cererilor separate pentru o colecție mare de resurse. Diferențele de performanță dintre schemele simple de partajare a resurselor și metodele care agregă resursele într-un singur bloc nu sunt suficient de semnificative pentru a justifica complicarea semnificativă a logicii de procesare din partea aplicației. ServerAgregarea are sens doar în situațiile în care performanța este o prioritate absolută. Atunci când simplificarea logicii și o API simplă sunt mai importante, este logic să se utilizeze procesarea separată a resurselor.

O altă concluzie este că memoria cache a browserului atunci când se utilizează HTTP/2 nu are un impact semnificativ asupra performanței de procesare a cererilor (execuția completă a 501 solicitări a fost mai lentă decât execuția a 51 solicitări la 90% cache plin de numai 1.2 ori în Firefox și de 2.3 ori în Chrome). Utilizarea Server Push nu a arătat beneficii semnificative în Firefox, dar a fost eficientă la încărcarea unui număr mare de resurse în Chrome. Autorii studiului au remarcat, de asemenea, că optimizarea părții server are un impact mai semnificativ asupra performanței decât optimizarea codului client care rulează în browser.

Sursa: opennet.ru

Cumpărați găzduire de încredere pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără găzduire web fiabilă cu protecție DDoS, servere VPS VDS | ProHoster