Prueba de rendimiento del servidor HTTP/2

· Características

Desde sgcWebSockets 4.4.3, HTTP/2 es compatible inicialmente y se añadirán nuevas características en próximas versiones. En una entrada previa del blog comparamos el rendimiento entre los protocolos HTTP 1.1 y HTTP/2; para hacerlo, usé el cliente HTTP/2 de sgcWebSockets que descargó 100 imágenes desde los servidores de imagekit.io

Cliente HTTP/2 

El cliente HTTP/2 de sgcWebSockets se ha modificado para permitir la url donde te conectarás para descargar imágenes jpeg. Ahora hay 2 urls:

La segunda es la que selecciono para hacer las pruebas; este es un servidor HTTP/2 local construido con la biblioteca sgcWebSockets.

Servidor HTTP/2 

Se ha construido una nueva muestra de servidor HTTP/2 con la biblioteca sgcWebSockets; este será el servidor que usaré para comparar el rendimiento entre ambos protocolos. Para probarlo, basta con abrir el ejecutable y empezará a escuchar en el puerto 5450 y localhost.

HTTP 1.1 vs HTTP/2 

Si inicio la prueba en el componente cliente, verás la gran diferencia entre HTTP 1.1 y HTTP/2. El protocolo HTTP/2 tarda casi nada en descargar las 100 imágenes, mientras que el protocolo HTTP 1.1 tarda mucho más porque cada vez debe abrir una nueva conexión, descargar, esperar y cerrar y empezar de nuevo, mientras que HTTP/2 usa la misma conexión para gestionar todas las peticiones y estas se procesan de forma asíncrona.

Componente HTTP/2

Descarga las muestras compiladas desde la siguiente url: https://www.esegece.com/products/websockets/http/http2