Vergelijking van de prestaties van HTTP/1.1, HTTP/2 en HTTP/2 + Server Push

Gepubliceerd resultaten van het onderzoek naar de prestaties van verschillende methoden voor het ophalen van een verzameling bronnen, met gebruik van de protocollen HTTP/1.1, HTTP/2 en HTTP/2 + Server Push voor communicatie met de server. In het onderzoek is ook de impact van het cache-geheugen van de browser en de manipulatie van bronnen op applicatieniveau (het samenvoegen van bronnen in één JSON-blok) beoordeeld.

De prestatietests van het uitvoeren van 25 aanvragen toonden over het algemeen voorspelbare resultaten – een merkbare achterstand van de aanvraag via HTTP/1.1 bij een leeg cache-geheugen en de voorkeurslevering van middelen in één blok (tests met de label 'compound'). De prestaties van Firefox en Chrome waren ongeveer gelijk, maar het hebben van gegevens in het cache-geheugen leidde niet tot de verwachte efficiëntiewinst.

Vergelijking van de prestaties van HTTP/1.1, HTTP/2 en HTTP/2 + Server Push

Maar in de test met de verwerking van 500 aanvragen kwam een merkbare achterstand van Chrome ten opzichte van Firefox naar voren bij het verzenden van een groot aantal aanvragen, en een achterstand van Firefox ten opzichte van Chrome bij het toepassen van de Server Push-mechanisme en in situaties waarin HTTP/2 wordt gebruikt met de meeste gegevens in het browsercache. Chrome toonde een effectievere werking met het cache-geheugen, terwijl Firefox effectiever was in de verwerking van externe aanvragen.

Vergelijking van de prestaties van HTTP/1.1, HTTP/2 en HTTP/2 + Server Push

Vergelijking van de prestaties van HTTP/1.1, HTTP/2 en HTTP/2 + Server Push

Op basis van de tests is geconcludeerd dat HTTP/2 voldoende effectief is in het verwerken van afzonderlijke aanvragen van een grote verzameling bronnen. De verschillen in prestaties tussen eenvoudige schema's van afzonderlijke leveringen van bronnen en methoden waarbij bronnen worden geaggregeerd in één blok, zijn niet significant genoeg om de aanzienlijke complicatie van de verwerkingslogica aan de applicatiezijde te rechtvaardigen en de server. Aggregatie heeft alleen zin in situaties waar prestaties de hoogste prioriteit hebben. Wanneer vereenvoudiging van logica en een eenvoudige API belangrijker zijn, is het logisch om afzonderlijke verwerking van bronnen te gebruiken.

Een andere conclusie is dat de browsercache bij gebruik van HTTP/2 geen significante invloed heeft op de prestaties van het verwerken van verzoeken (de volledige uitvoering van 501 verzoeken bleek 1,2 keer langzamer dan de uitvoering van 51 verzoeken bij 90% cachevulling in Firefox en 2,3 keer langzamer in Chrome). Het gebruik van Server Push heeft geen wezenlijke voordelen aangetoond in Firefox, maar bleek effectief bij het laden van een groot aantal bronnen in Chrome. De auteurs van de studie merkten ook op dat optimalisatie aan serverzijde een grotere impact heeft op de prestaties dan optimalisatie van de clientcode die in de browser wordt uitgevoerd.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster