Brotli: "Nuevo" algoritmo de google para compresión de traffico web

[h]¿Qué mejoras esperar con Brotli, un “nuevo” algoritmo para la compresión del trafico?[/h]

Sin ser un experto se puede entender que mandar unos paquetes comprimido reduce el tamaño de dichos paquetes y disminuye el tiempo de carga de una pagina.
El formato elegido debe ser “universal” (implementado de forma nativa navegadores) y no pasarse a nivel de usos de recursos
No debe movilizar muchos recursos sino el tiempo ahorrado con la compresión se perdería por el desgaste de recursos.
La idea siendo agilizar la navegación reduciendo el tiempo de carga
Un formato reconocido y empelado es por ejemplo gzip (Entre otros)

Brotli es un nuevo formato de compresión lanzado por Google en 2015.
Hoy en día está presente (no hace mucho) en los navegadores más populares Firefox, Chrome… Aún no está presente en Safari o IE.
Apache y gnix (para los servers) brindan soporte desde 2016.
Podemos decir que las condiciones están más o menos reunidas para que su uso despegue.
Los puntos a favor de Brotli ** serían
- Su optimización para trafico https.
- Es “open source”
- Y sobre todo es un ** 20-25% mas eficiente
que los otros formatos de compresión:

  1. Brotli: A new compression algorithm for faster Internet by Stefano Maffulli @ Open Source/*]

A continuación podéis ver las cifras publicadas por google en su PDF de presentación de sus estudios:

Puesto así las cifras para **Brotli ** son muy buenas
¡Ojo!
se deben considerar los tres factores juntos: “descompresión”, compresión **y ratio de compresión **
Si se descomprime mas rápido pero se obtienen menos kb por kb descomprimidos no es seguro que vayamos más rápido.
Está prueba ha sido realizada sobre la pagina Canterbury corpus
Tenéis a otras pruebas en el PDF:

  1. Comparison of Brotli, Deflate, Zopfli , LZMA , LZHAM and Bzip2 Compression Algorithms/*]

Al final considerando por ejemplo brotli1 y deflate 9 que son bastante comparables, tenemos un + 2% en velocidad de descompresión y + 20% en nivel de compresión.
Unas cifras que faltan en el estudio es el uso de recursos. los de google dicen que se ahorran recursos

El algoritmo parece traer una mejora, puede ser interesante.
A pesar de ser bastante buenas, no sé si las cifras son lo bastante llamativas para atraer a los administradores de servidores.
Qué será será. :stuck_out_tongue:

Otras ventajas serian el uso de diccionario para la compresión (español, ingles y otros idiomas) y la “modelisación contextual” que permite multiplicar mejor las inetencias

Añado un link hacía un excelente articulo que explica en detalles como funciona la compresión de archivo y compara** brotli **a los otros algoritmos.

  1. Results of experimenting with Brotli for dynamic web content by Vlad Krasnovn @ cloudfare/*]

Sus conclusiones son menos entusiastas que las de google…

Brotli va bien con los archivos grandes pero es más lento con los paquetes pequeños (menos de 64kb)
Y la mayoría de los paquetes intercambiados son pequeños.
Este hecho contrasta seriamente la ventaja observada con archivos pesados.

Es interesante notar lo que opinan sobre la reacción de la “comunidad” formada por los webmasters y administradores de sitios
Son sus clientes y están en situación idónea para imaginar dicha reacción.

Podemos leer entre lineas que opinan que se necesitará algo más para que Brotli se imponga y qué necesita hacer sus pruebas para eludir a zlib.