Una descripción detallada de cómo funciona el protocolo HTTP/2
Te sugiero leer primero el tutorial de HTTP
HTTP/2 es la versión actual del protocolo HTTP. Fue lanzado en 2015 por el comité IETF (Internet Engineering Task Force) y ahora es ampliamente adoptado sus características únicas.
HTTP/2 tiene mucho más rendimiento que HTTP/1.1, la última versión de HTTP que estaba disponible en ese momento.
La mejora de velocidad que ofrece HTTP/2 fue tan atractiva que se adoptó rápidamente: con un simple cambio en el servidor web (ya que HTTP/2 es 100% compatible con HTTP/1.1), sus sitios web y aplicaciones web ahora funcionan mucho más rápido de manera automática, lo que a su vez es beneficioso para sus usuarios y también para fines de SEO (ya que la velocidad es un factor crucial para la clasificación).
¿Cómo puede ser HTTP/2 mucho más rápido que HTTP/1.1? Las razones son muchas, todas ellas orientadas a reducir las ineficiencias de la versión anterior y a introducir características que permitan a los navegadores ser más capaces de servir recursos con mayor rapidez.
Las principales características de la nueva versión del protocolo son:
- Multiplexación de solicitudes y respuestas
- Compresión eficiente de encabezados HTTP
- empuje del servidor
- comunicación binaria
Multiplexación
Antes de HTTP/2, solo se podía servir una respuesta a la vez por cada conexión TCP.
TCP es el protocolo subyacente sobre el que se construye HTTP. TCP se mantiene en la capa de transporte, mientras que HTTP se encuentra en el nivel de aplicación.
HTTP/2 habilitó la multiplexación de solicitud/respuesta sobre una única conexión TCP, lo que permite que el servidor atienda múltiples solicitudes con la misma conexión, lo que resulta en una comunicación mucho más rápida.
Este es el único cambio que será de gran beneficio para su aplicación, y hace que varias técnicas de optimización queden obsoletas, incluyendo los sprites de imágenes (que se utilizan para combinar varias imágenes en una sola, que luego se “demultiplexa” mediante una técnica CSS especial) y la fragmentación de dominios, otro truco utilizado para evitar el límite del navegador en el número de conexiones simultáneas al mismo dominio.Te recomendamos Aviation Questions and Answers
Compresión de encabezados
Los encabezados HTTP de las páginas y los recursos pueden crecer bastante, considerando un uso normal de cookies y otros valores de encabezado. La compresión permite que HTTP ocupe menos espacio, lo que reduce la cantidad de datos intercambiados entre el cliente y el servidor.
Empuje del servidor
Server Push es una función que permite enviar múltiples respuestas a una sola solicitud. Dado que el servidor sabe que cuando un cliente solicita un recurso, éste solicitará otros recursos complementarios (por ejemplo, CSS, JS, imágenes vinculadas a una página), el servidor puede decidir enviarlos inmediatamente.
En lugar de enviar el HTML, esperar a que el navegador lo analice y envíe otras solicitudes para obtener los recursos, el servidor puede enviarlos todos juntos.
Un servidor también puede decidir enviar recursos que podrían ser necesarios en futuras solicitudes, preoptimizando la próxima carga de la página y poniéndola en el caché del cliente.
Tenga en cuenta que el envío al servidor también puede tener sus propios inconvenientes: por ejemplo, puede correr el riesgo de enviar demasiados datos al cliente que podrían no ser necesarios (quizás ya estén disponibles en el cliente como almacenados en caché), así que utilícelos con precaución.
Comunicación binaria
HTTP/1.1 utilizaba comunicación basada en texto. HTTP/2 utiliza comunicación binaria, que tiene algunas ventajas, entre ellas, que es más eficiente en el análisis, menos propensa a errores y también más compacta.
¿Cuál es la evolución para el futuro?
HTTP/3 está en desarrollo y será una adaptación de HTTP-over-QUIC , un proyecto experimental.
QUIC es un protocolo basado en UDP (en lugar de TCP) en la capa de transporte, lo que significa que HTTP/3 se basará en una pila tecnológica completamente diferente en comparación con HTTP/2 y HTTP/1.x.
Tal vez te puede interesar:
- Introducción a React
- Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
- Cómo cambiar el valor de un nodo DOM
- Cómo comprobar si un elemento DOM tiene una clase
El protocolo HTTP/2
MultiplexaciónCompresión de encabezadosEmpuje del servidorComunicación binaria¿Cuál es la evolución para el futuro?
programar
es
2025-01-17

Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente