Hoy vamos a aprender qué es HTTP/2 qué características tiene y la importancia de activarlo para mejorar la velocidad en nuestra página web.
¿Qué es HTTP2?
HTTP/2 es el Protocolo de Transferencia de Hipertexto 2.0 y es la versión actualizada del protocolo HTTP de internet que permite la comunicación y transferencia de información en la red.
Podemos decir que HTTP es el idioma o la forma en el que se comunican los navegadores web, los servidores y los demás dispositivos de la red.
Esta versión actualizada del Protocolo de Transferencia de Hipertexto HTTP tiene grandes mejoras sobre todo de velocidad de transferencia de información total entre el servidor y el navegador.
Por lo tanto, repercute directamente en la velocidad de carga de las páginas web y también en otros servicios de internet.
Mejora de velocidad Web
Migrar una web a Http/2 es una medida WPO que se traduce finalmente en una mejora de carga de la web.
La velocidad que puedes llegar a ganar según los expertos es de aproximadamente el 10% y el 30% dependiendo de lo optimizada que ya esté tu web.
De esta manera, puedes llegar a reducir incluso en segundos la velocidad de carga total de tu web, lo que la convierte en una medida de optimización prioritaria hoy en día.
Esto es debido a las mejoras y características del protocolo que entre otras son, mejor gestión de las peticiones, peticiones múltiples de elementos y compresión de la cabecera entre otras.
¿Cómo activar el protocolo HTTP/2?
Este protocolo se instala en el servidor, por lo tanto tendrás que preguntar a tu proveedor de hosting en el caso de utilizar un hosting compartido.
En los hosting de calidad el protocolo HTTP/2 se activa automáticamente al instalar el HTTPS, por ejemplo en SiteGround.
Y en otros proveedores, tendrás que contactar con su soporte para averiguar si ofrecen esta tecnología.
Si tu proveedor de hosting no ofrece esta tecnología te recomiendo encarecidamente que te cambies de hosting por que no utilizan la última tecnología y http ya lleva al menos 3 de añitos largos.
Comprobar si http 2 está activado
Para comprobar si tu servidor utiliza HTTP/2 puedes utilizar herramientas online de http2 checker como https://tools.keycdn.com/http2-test
http2 vs http1
Vamos a ver de forma gráfica una comparativa de cómo sería la gestión de las peticiones, que es la principal mejora que tiene HTTP2 sobre su antecesor y consiste en que se pueden hacer más de una petición y más de una respuesta entre el navegador y le servidor.
El protocolo HTTP trabaja de forma que cada vez que el navegador hace una petición al servidor, esta genera una única respuesta.
Esto significa que los archivos no serán enviados hasta que se pidan. Y como vemos en el ejemplo se necesitan 8 conexiones más la de cierre para crear una web.
Y ahora, lo vamos a comparar con el protocolo HTTP/2, que genera varias respuestas que el navegador y el servidor ya han previsto que se van a necesitar.
Como vemos en el ejemplo en navegador solicita en una sola petición los archivos que necesita, y el servidor responde enviando los dos archivos de forma paralela.
Como consecuencia se necesitan menos conexiones entre el cliente y el servidor y además se deja la conexión abierta para las futuras peticiones.
Explicación simple. Http es un camarero que viene cada vez que necesitas algo perdiendo tiempo en cada paseo a la cocina y Http2 es un camarero que te pide nota y te lo trae todo en una bandeja.
Principales Características de HTTP2
Requiere HTTPS: para utilizar el protocolo HTTP2 primero tienes que tener un certificado SSL instalado en tu servidor.
Es Binario: La información se codifica en binario y no en texto plano como era antes en HTTP, de esta manera se crean comunicaciones más eficientes al crear mensajes que se procesan rápidamente.
Una conexión TCP: Se realiza solo una conexión TCP por cada servidor al que se realice la petición y se mantiene abierta para a su reutilización.
Multiplexado: en vez de tratar las peticiones una por una, la conexión es multiplexada, que permite enviar más de una ejecución de peticiones a la vez.
Lo que significa que varios archivos de la web pueden enviarse a la vez al navegador y si una petición es larga no se bloqueara a la siguiente.
Compresión de cabeceras: Las cabeceras de la web viajan en texto plano en HTTP pero con el protocolo 2.0 estas cabeceras se comprimen mejorando su velocidad de carga y transmisión. Muy necesario sobre todo en dispositivos móviles.
Server Push: El servidor enviará información al navegador antes de que este la solicite. Esto es realmente útil para reducir las peticiones al servidor, ya que el servidor preverá y te envía la información o archivos que vas a necesitar antes de pedirla.
Por ejemplo, al querer cargar una página, cuando se hace la petición, el servidor te enviará el index.html y además archivos de css y js necesario reduciendo más peticiones innecesarias.
Técnicas WPO que ya no son necesarias con Http/2
La técnica Keep Alive Header que permite mantener la conexión activa siempre ya no es necesaria, ya que la conexión se deja abierta por defecto.
Ya no es necesario concatenar Js y Css en un archivo único, ya que gracias al multiplexado se pueden cargar varios archivos pequeños a la vez más rápidamente que un solo archivo de Js y Css pesado.
El uso de Sprites CSS para imágenes, esta técnica agrupa diferentes imágenes en una sola y las mostraba mediante Css para reducir peticiones.
La técnica de Domain Sharding, que es realizar la carga paralela de los elementos de una web utilizando varios subdominios.