0%
Inicio 9 Glossary Item 9 Brotli Compression
« Back to Glossary Index

Nivel Principiante

Imagina que quieres enviar un libro muy grande por correo. En lugar de enviarlo tal cual, lo comprimes en un paquete más pequeño. Brotli es un sistema de compresión para páginas web que hace lo mismo. Reduce el tamaño de los archivos de tu sitio web (como el HTML, CSS y JavaScript) para que el navegador del usuario pueda descargarlos mucho más rápido. Es como enviar un libro en una bolsa compacta en lugar de en una caja gigante.

Nivel Intermedio

Brotli es un algoritmo de compresión de datos sin pérdidas desarrollado por Google. Su principal objetivo es optimizar la transferencia de datos en la web, ofreciendo una mayor tasa de compresión y una velocidad de descompresión comparable a otros algoritmos como Gzip. A diferencia de Gzip, Brotli está especialmente diseñado para el contenido web y utiliza un diccionario de palabras y frases predefinidas (el diccionario estático) que le permite comprimir texto de manera más eficiente.

Las principales ventajas de Brotli son:

  • Mejor Tasa de Compresión: Reduce el tamaño de los archivos web (HTML, CSS, JavaScript) entre un 15% y un 25% más que Gzip.
  • Velocidad de Descompresión Rápida: Aunque la compresión puede ser más lenta, la descompresión en el navegador es muy rápida, lo que minimiza el tiempo de procesamiento en el cliente.
  • Compatibilidad: Es compatible con todos los navegadores modernos y se puede implementar en el servidor web.

La implementación de Brotli es una de las técnicas más efectivas para mejorar la velocidad de carga de una página web.

Nivel Avanzado

Técnicamente, Brotli es un algoritmo de compresión de propósito general que utiliza una combinación de un algoritmo de codificación de Huffman de segunda generación, un diccionario estático predefinido y una codificación de distancias de copiado.

El diccionario estático de Brotli es una de sus características distintivas. Contiene más de 13,000 palabras comunes del lenguaje humano y frases clave que se encuentran en el código HTML, CSS y JavaScript. En lugar de comprimir estas palabras y frases cada vez, Brotli simplemente las referencia, lo que reduce significativamente el tamaño del archivo comprimido.

El flujo de trabajo de la compresión con Brotli es:

  1. Configuración en el Servidor: El servidor web (ej. Nginx o Apache) se configura para comprimir los recursos (text/html, application/javascript, text/css, etc.) con Brotli. El servidor detecta si el navegador del cliente soporta Brotli a través del encabezado Accept-Encoding: br.
  2. Compresión: El servidor comprime el archivo y lo envía al navegador con el encabezado de respuesta Content-Encoding: br.
  3. Descompresión: El navegador del cliente, al recibir el encabezado, descomprime el archivo de forma eficiente y lo procesa.

Aunque la compresión de Brotli es más lenta que la de Gzip, a menudo se realiza en el servidor por adelantado (offline) o en un nivel de compresión más bajo para mantener el rendimiento. La mejora en la velocidad de carga es un factor clave en la Experiencia de Usuario (UX), en la tasa de conversión y en el SEO, lo que hace que Brotli sea una herramienta esencial en la optimización del rendimiento web.

« Volver al índice del glosario