HTTP/2 Server Test Performance

· Fonctionnalités

Depuis sgcWebSockets 4.4.3, HTTP/2 est initialement pris en charge et de nouvelles fonctionnalités seront ajoutées dans les prochaines versions. Dans un précédent article, nous avons comparé les performances entre HTTP 1.1 et HTTP/2 : pour cela, j'ai utilisé le client HTTP/2 de sgcWebSockets qui téléchargeait 100 images depuis les serveurs imagekit.io

Client HTTP/2 

Le client HTTP/2 de sgcWebSockets a été modifié pour permettre l'url depuis laquelle tu te connecteras pour télécharger les images JPEG. Il y a maintenant 2 urls :

C'est la seconde que je choisis pour faire les tests : il s'agit d'un serveur HTTP/2 local construit avec la bibliothèque sgcWebSockets.

Serveur HTTP/2 

Un nouvel exemple de serveur HTTP/2 a été construit avec la bibliothèque sgcWebSockets : c'est le serveur que je vais utiliser pour comparer les performances des deux protocoles. Pour tester, il suffit d'ouvrir l'exécutable : il commencera à écouter sur le port 5450 et localhost.

HTTP 1.1 vs HTTP/2 

Si je démarre le test sur le composant client, tu verras la grande différence entre HTTP 1.1 et HTTP/2. Le protocole HTTP/2 ne prend presque rien pour télécharger les 100 images, tandis que le protocole HTTP 1.1 prend beaucoup plus de temps parce qu'il doit à chaque fois ouvrir une nouvelle connexion, télécharger, attendre, fermer et recommencer. HTTP/2 utilise la même connexion pour gérer toutes les requêtes, qui sont traitées de façon asynchrone.

Composant HTTP/2

Télécharge les exemples compilés depuis l'url suivante : https://www.esegece.com/products/websockets/http/http2