Reducir las solicitudes HTTP para un sitio web más rápido

Jazmie Jamaludin

Imagina que envías a un amigo a la tienda a comprar los ingredientes para hacer la cena, pero en lugar de darle una lista, le envías un mensaje de texto con cada artículo por separado y le haces volver a casa después de cada viaje. Un viaje por la harina. De vuelta a casa. Un viaje por los huevos. De vuelta a casa. Un viaje por la mantequilla. Cuando tiene todo, la noche ha pasado y aún no has empezado a cocinar. Hubiera sido mucho más rápido enviarlo una sola vez con la lista completa.

Esto es casi exactamente lo que sucede cuando se carga una página web. Cada imagen, cada archivo de estilo, cada fuente, cada pequeño fragmento de comportamiento se obtiene en un viaje separado entre el navegador del visitante y el servidor de tu sitio web. Cada uno de esos viajes se denomina solicitud HTTP, y aunque una sola es rápida, una página compuesta por cien de ellas puede resultar lenta. En esta guía te explicaremos, sin tecnicismos, qué son estas solicitudes, por qué tener demasiadas te ralentiza y las formas prácticas de hacer que el navegador de tu visitante compre con menos frecuencia.

¿Qué es una solicitud HTTP, en realidad?

Cuando alguien visita tu sitio web, su navegador no recibe la página completa en un solo paquete ordenado. Recibe un conjunto de instrucciones que dicen, en efecto, "para construir esta página necesitarás esta imagen, y esa fuente, y este archivo de estilo, y ese fragmento de código". El navegador vuelve al servidor y solicita cada una de esas cosas una por una. Cada una de esas solicitudes es una solicitud HTTP. Las letras corresponden al lenguaje que utilizan los navegadores y servidores para comunicarse entre sí, pero no necesitas recordar eso; lo que importa es la idea de un viaje de ida y vuelta para cada elemento.

Una página moderna típica puede desencadenar docenas, a veces cientos, de estas solicitudes. Cada viaje tiene un pequeño coste fijo, un momento de preparación de la conversación, solicitud y espera de la respuesta, independientemente del tamaño del elemento. Incluso cuando cada elemento es minúsculo, el gran número de viajes se acumula, como una cola de personas que tardan unos segundos en una caja. Reduce el número de viajes y la página completa se ensambla más rápido.

Las páginas son cada vez más pesadas cada año
Los estudios de la web muestran consistentemente que el número de archivos que carga una página promedio ha aumentado con el tiempo, haciendo que la gestión de solicitudes sea más importante que nunca.
Fuente: HTTP Archive Web Almanac

Por qué demasiadas solicitudes ralentizan las cosas

Hay dos razones por las que una larga lista de solicitudes ralentiza una página. La primera es el coste fijo de cada viaje que acabamos de describir: configurar la conversación, aunque sea brevemente, lleva tiempo, y ese tiempo se repite para cada elemento. La segunda es que los navegadores solo pueden mantener un cierto número de estas conversaciones a la vez. Como una tienda con un número limitado de cajas abiertas, las solicitudes que superan ese límite tienen que esperar en la cola hasta que las anteriores terminen.

Esta es la razón por la que dos páginas de peso total idéntico pueden sentirse muy diferentes. Una página que carga su contenido en un puñado de archivos más grandes a menudo se siente más ágil que una que carga el mismo contenido dividido en cien archivos pequeños, porque dedica mucho menos tiempo a hacer cola y configurarse. Reducir las solicitudes es, por lo tanto, una de las formas más directas de hacer que una página se sienta rápida, y complementa las otras tácticas de nuestra guía sobre cómo acelerar un sitio web lento.

El impuesto de configuración de la conexión

Algunas solicitudes son más lentas que otras porque el navegador tiene que establecer una nueva conexión con un servidor con el que no ha hablado antes. Si tu página obtiene imágenes de un lugar, fuentes de otro y scripts de seguimiento de varios más, cada nueva fuente significa una nueva introducción, un pequeño pero real retraso. Reducir el número de fuentes separadas de las que depende tu página es una forma discretamente eficaz de acelerar las cosas.

Las formas prácticas de enviar menos solicitudes

Reducir las solicitudes no se trata de dejar tu sitio desnudo. Se trata de ser considerado con la forma en que se entrega el contenido. Estas son las palancas más efectivas, la mayoría de las cuales tu plataforma o un complemento de rendimiento pueden manejar por ti.

Formas de reducir las solicitudes y lo que hace cada una
Técnica Lo que hace Esfuerzo
Combinar archivos Fusiona varios archivos de estilo o código en menos archivos más grandes. Bajo, a menudo una configuración.
Eliminar complementos no utilizados Cada plugin o widget puede añadir sus propias solicitudes; la eliminación ayuda. Bajo a medio.
Aplazar imágenes fuera de pantalla Carga imágenes solo cuando el visitante se desplaza hacia ellas. Bajo, generalmente incorporado.
Limitar fuentes externas Menos servicios externos significa menos conexiones nuevas que establecer. Medio, requiere revisión.
Usar una red de entrega de contenido (CDN) Sirve archivos desde una ubicación cercana al visitante, acelerando cada viaje. Bajo a medio.

Ten en cuenta que varias de estas técnicas se superponen con otras técnicas de velocidad. Aplazar las imágenes fuera de pantalla, por ejemplo, es el núcleo de la carga diferida, y la combinación de archivos está estrechamente relacionada con la minificación. Un buen trabajo de rendimiento tiende a reutilizar las mismas ideas en diferentes combinaciones.

El mayor culpable: cosas que olvidaste haber añadido

Si auditas las solicitudes de un sitio web típico, un número sorprendente proviene de características que el propietario apenas recuerda haber instalado. Un widget para compartir en redes sociales aquí, una herramienta de análisis allá, un cuadro de chat, un creador de ventanas emergentes, una fuente que probaste una vez y nunca eliminaste. Cada uno de estos trae sus propios archivos y sus propias solicitudes, a menudo cargándose en cada página, se usen o no. Con el paso de los meses y los años, estos se acumulan como el desorden en un cajón.

Esta es la razón por la que una limpieza periódica es una de las mejoras de velocidad más efectivas disponibles, y no cuesta nada más que un poco de atención. Revisar tus complementos y eliminar cualquier cosa que ya no uses puede reducir un número notable de solicitudes en cada página a la vez. Esto se relaciona directamente con el mantenimiento seguro y continuo, que cubrimos en nuestra guía sobre cómo gestionar plugins y complementos de forma segura.

Los scripts de terceros son una de las principales fuentes de hinchazón
Los análisis de rendimiento encuentran repetidamente que el código cargado de servicios externos es uno de los contribuyentes más pesados y menos notados a las páginas lentas.
Fuente: Google web.dev

Cómo la tecnología moderna ha cambiado el panorama

Cabe destacar que las reglas al respecto se han flexibilizado un poco con el tiempo. La tecnología de internet más antigua era estricta sobre cuántas conversaciones podía mantener un navegador a la vez, lo que hacía que la combinación de archivos fuera casi esencial. La tecnología de conexión más nueva, ahora ampliamente compatible, permite a los navegadores manejar muchas solicitudes a través de una sola conexión con mucha más gracia, aliviando algunas de las antiguas penalizaciones.

Esto no hace que la reducción de solicitudes sea inútil; solo cambia el énfasis. El costo fijo de cada solicitud todavía existe, las conexiones externas todavía tardan en establecerse y los complementos no utilizados siguen siendo peso muerto. Pero sí significa que debes concentrar tu energía en las solicitudes que realmente importan, las grandes, las lentas externas y las innecesarias, en lugar de obsesionarte con fusionar cada archivo minúsculo. El enfoque más inteligente es medir primero, lo que te explicamos en nuestra guía de auditoría de salud del sitio web.

Una forma práctica de encontrar a los mayores culpables

La teoría está bien, pero la mayoría de los propietarios quieren saber por dónde empezar. La buena noticia es que puedes encontrar tus solicitudes más pesadas en unos pocos minutos sin ninguna formación técnica. Las herramientas gratuitas de velocidad de página en línea te permiten introducir una dirección de página y recibir un desglose claro: cuántas solicitudes hizo la página, el tamaño de cada una, de dónde provino y cuánto tiempo tardó en llegar. Ordena esa lista por tamaño o por tiempo, y los culpables saltarán a la vista inmediatamente.

Lo que buscas es una breve lista de villanos en lugar de una larga lista de infractores menores. Una sola imagen de gran tamaño, un script externo lento o un widget olvidado que se carga en cada página suelen causar más daño que docenas de solicitudes pequeñas y rápidas combinadas. Aborda esas pocas primero, vuelve a probar, y a menudo verás una mejora significativa con un puñado de pequeños cambios. Este enfoque de "centrarse en lo peor" te evita la trampa de jugar interminablemente con ahorros triviales mientras el problema real permanece intacto. Haz que sea un hábito realizar esta comprobación cada vez que tu sitio se sienta más lento de lo que debería, y especialmente después de añadir algo nuevo, porque las nuevas funciones son donde las nuevas solicitudes se cuelan silenciosamente.

Mantener las solicitudes bajo control con el tiempo

Como la mayoría de los aspectos de la velocidad de un sitio web, el número de solicitudes no es una solución única. Cada nueva función, banner de campaña o herramienta incrustada puede aumentar silenciosamente el recuento, y un sitio que era ligero el año pasado puede hincharse sin que nadie se dé cuenta. El remedio es hacer de la revisión de solicitudes un hábito pequeño y regular en lugar de un rescate anual heroico. Incluso una revisión rápida cada pocos meses mantiene las cosas en orden.

Aquí merece una mención especial una red de entrega de contenido (CDN), porque mejora la velocidad de cada solicitud individual al servir los archivos desde una ubicación físicamente más cercana al visitante. Para sitios con una audiencia amplia o internacional, eso puede ser tan importante como reducir el número de solicitudes. Explicamos cuándo vale la pena en nuestra guía sobre qué es una CDN y si necesitas una, y cómo mantener las ganancias en mantener tu sitio web rápido con el tiempo.

En resumen

Cada archivo que tu página necesita es un viaje separado entre el navegador del visitante y tu servidor, y aunque cada viaje es rápido, cien de ellos no lo son. Reducir las solicitudes HTTP se trata de ser deliberado: combinar archivos donde sea útil, aplazar imágenes que aún no son visibles, limitar los servicios externos en los que te apoyas y eliminar los complementos que ya no usas. Nada de esto requiere grandes conocimientos técnicos, y la mayor parte de tu plataforma puede manejarlo una vez que sepas qué buscar.

La acción más poderosa para la mayoría de los sitios es la más sencilla: eliminar lo que no estás usando. Los widgets antiguos, las herramientas abandonadas y las fuentes olvidadas cuestan solicitudes en cada vista de página, y eliminarlos es gratis. Combina ese hábito con las técnicas relacionadas de carga diferida, minificación y una red de entrega de contenido, y tendrás una página que se ensambla rápidamente y permanece así. Si la gestión de todo esto te parece un trabajo excesivo, te invitamos a ponerte en contacto y encargarnoslo.

Preguntas frecuentes

¿Cuántas solicitudes HTTP son demasiadas?+
No hay un número mágico único, porque depende del tamaño y la fuente de cada solicitud. Una página con muchas solicitudes pequeñas, rápidas y locales puede superar a una con unas pocas solicitudes grandes, lentas y externas. En lugar de perseguir un número objetivo, concéntrate en eliminar las solicitudes innecesarias, pesadas o lentas de conectar.
¿Combinar archivos siempre hará mi sitio más rápido?+
No siempre. Con la tecnología de conexión moderna, los navegadores manejan muchas solicitudes simultáneas con más gracia que antes, por lo que la fusión agresiva de cada archivo diminuto es menos importante que antes. Sigue siendo útil, pero tus mayores ganancias suelen provenir de eliminar complementos no utilizados y limitar las fuentes externas lentas.
¿Cómo puedo ver cuántas solicitudes hace mi página?+
Las herramientas gratuitas de prueba de velocidad de páginas en línea te mostrarán el número total de solicitudes que hace una página, el tamaño de cada una y de dónde provienen. Este es el mejor punto de partida, porque te indica exactamente qué solicitudes vale la pena abordar primero en lugar de adivinar.
¿Usar más servicios externos realmente ralentiza mi sitio?+
Sí, puede hacerlo. Cada fuente externa en la que se basa tu página, como fuentes, análisis, widgets de chat y similares, requiere que el navegador establezca una nueva conexión, lo que añade un pequeño retraso. Unas pocas están bien; una larga lista de ellas, especialmente si algunas responden lentamente, puede ralentizar notablemente una página.

Referencias

  1. HTTP Archive. "Web Almanac: Page Weight and Requests." almanac.httparchive.org.
  2. Google. "Reduce the impact of third-party code." web.dev.
  3. Mozilla. "An overview of HTTP." developer.mozilla.org.
Regresar al blog

AUTOMATICE. OPTIMICE. DOMINE.

Optimice sus operaciones y ofrezca una experiencia de cliente fluida. Deje que nuestros expertos implementen tecnología de vanguardia y flujos de trabajo optimizados para que pueda concentrarse en lo que mejor sabe hacer.