HTTP/2 Server Test Performance

· Funktionen

Ab sgcWebSockets 4.4.3 wird HTTP/2 erstmals unterstützt, und in den nächsten Versionen werden neue Funktionen ergänzt. In einem früheren Blog-Beitrag haben wir die Leistung von HTTP 1.1 und HTTP/2 verglichen. Dazu nutzte ich den sgcWebSockets-HTTP/2-Client, der 100 Bilder von den imagekit.io-Servern lud. 

HTTP/2-Client 

Der sgcWebSockets-HTTP/2-Client wurde so erweitert, dass du die URL angeben kannst, zu der du zum Herunterladen von JPEG-Bildern verbindest. Es gibt jetzt 2 URLs:

Die zweite verwende ich für die Tests — das ist ein lokaler HTTP/2-Server, der mit der sgcWebSockets-Bibliothek gebaut wurde.

HTTP/2-Server 

Es wurde ein neues HTTP/2-Server-Beispiel mit der sgcWebSockets-Bibliothek erstellt — das ist der Server, mit dem ich die Leistung beider Protokolle vergleiche. Zum Testen einfach die Executable starten: Sie beginnt, auf Port 5450 und localhost zu lauschen.

HTTP 1.1 vs HTTP/2 

Wenn ich den Test in der Client-Komponente starte, siehst du den großen Unterschied zwischen HTTP 1.1 und HTTP/2. Das HTTP/2-Protokoll braucht fast keine Zeit, um die 100 Bilder herunterzuladen, während HTTP 1.1 deutlich länger benötigt — es muss jedes Mal eine neue Verbindung öffnen, herunterladen, warten, schließen und wieder von vorne beginnen. HTTP/2 nutzt dagegen dieselbe Verbindung für alle Anfragen, und diese werden asynchron verarbeitet.

HTTP/2-Komponente

Lade die kompilierten Beispiele unter folgender URL herunter: https://www.esegece.com/products/websockets/http/http2