HTTP/2 (Hypertext Transfer Protocol version 2) es una revisión importante del protocolo HTTP, estandarizada como RFC 7540 en 2015. Su objetivo principal es abordar las limitaciones de rendimiento de HTTP/1.1 sin cambiar la semántica fundamental del protocolo. Introduce características como la multiplexación binaria, que permite múltiples solicitudes y respuestas concurrentes sobre una única conexión TCP; la compresión de cabeceras (HPACK), que reduce la sobrecarga de datos repetitivos; y Server Push, que permite al servidor enviar recursos al cliente antes de que este los solicite explícitamente. Opera sobre una capa de transporte segura (TLS) en la mayoría de las implementaciones, aunque no es un requisito estricto.

HTTP/2 ha sido ampliamente adoptado en la infraestructura web moderna. Navegadores web como Google Chrome, Mozilla Firefox, Microsoft Edge y Safari lo soportan de forma nativa. Servidores web populares como Nginx, Apache HTTP Server (a través del módulo mod_http2) y Caddy lo implementan. CDNs como Cloudflare y Akamai lo utilizan para acelerar la entrega de contenido. Frameworks y librerías de desarrollo web en lenguajes como Node.js, Go, Java (con Jetty o Netty) y Python (con h2) ofrecen soporte para construir aplicaciones que se comunican usando HTTP/2, facilitando la creación de APIs y microservicios de alto rendimiento.

Para un arquitecto, HTTP/2 es crucial por su impacto en la latencia y el rendimiento de las aplicaciones distribuidas. La multiplexación reduce la necesidad de múltiples conexiones TCP, disminuyendo el overhead de establecimiento de conexión y el número de descriptores de archivo abiertos en el servidor. La compresión de cabeceras es vital para APIs con muchas solicitudes pequeñas. Server Push puede mejorar significativamente la experiencia del usuario al precargar recursos críticos. Sin embargo, su adopción requiere considerar la compatibilidad con proxies intermedios y balanceadores de carga, y la complejidad adicional en la depuración de la red. La decisión de migrar a HTTP/2 debe sopesar los beneficios de rendimiento frente a la inversión en infraestructura y la posible necesidad de reconfigurar componentes de red existentes, especialmente en entornos de microservicios donde la comunicación interna puede beneficiarse enormemente.