O Gzip se tornou o padrão ouro para compactação de arquivos no início dos anos 1990, mas se você ainda o usa em 2018, convém mudar para um método de compactação mais recente.
Embora o Gzip ainda tenha seu lugar no coração de muitos, os desenvolvedores da web estão cada vez mais se voltando para opções superiores, como o algoritmo de compressão Brotli do Google.
Uma breve história sobre a compactação de arquivos
O “G” em Gzip é a abreviação de GNU. GNU é um sistema operacional de código aberto baseado em Unix que foi desenvolvido na década de 1980. Naquela época, a Unisys e a IBM já haviam patenteado seus próprios algoritmos para compactar e descompactar arquivos, o que permitia que suas máquinas armazenassem mais dados. Portanto, os programadores Jean-loup Gailly e Mark Adler criaram o Gzip como uma alternativa gratuita para usuários GNU.
O novo Gzip não era apenas uma cópia barata; era realmente mais rápido do que os seus concorrentes protegidos por direitos autorais. Como resultado, as pessoas ainda o usam para compactação de arquivos até hoje. Embora seja fácil manter o que você está acostumado, existem vários algoritmos de compactação que atualmente fornecem melhores resultados de compactação do que o Gzip. É aí que entra o Brotli.
Brotli é uma especificação de formato de dados mais recente que aproveita a vantagem de vários algoritmos para condensar os dados com mais eficiência do que o Gzip. Em 2015, a especificação Brotli foi generalizada para compressão de fluxo HTTP com o tipo de codificação de conteúdo ‘br’.
Desenvolvido por Jyrki Alakuijala e Zoltan Szabadka, o Brotli usa os mesmos algoritmos de compactação do Gzip, mas também é compatível com um dicionário de palavras e frases usadas com frequência para oferecer uma taxa de compactação melhor.
Lembre-se de que Gzip e Brotli devem ser usados apenas para compactar arquivos de texto. Arquivos binários como JPEGs e MP4s contam com seus próprios algoritmos de compactação específicos de formato. Se você tentar compactar um JPEG com Brotli, o arquivo resultante será na verdade maior do que o original.
Embora nem sempre tenha sido assim, o Brotli agora é compatível com todos os principais navegadores.
No caso de um navegador, que não suporta os quesitos do Brotli, solicitar um ativo de um site que entrega arquivos compactados por Brotli, o servidor fará fallback para o Gzip e entregará ativos codificados que o navegador suporta – desde que o servidor esteja configurado corretamente.
Apesar do que você pode ter ouvido, compactar ativos com Brotli não é mais demorado do que com o Gzip. Dito isso, Gzip e Brotli oferecem níveis variáveis de compactação, e as configurações padrão do Brotli podem resultar em uma compactação mais lenta do que as configurações padrão do Gzip. Você terá que fazer alguns ajustes no Brotli para encontrar um equilíbrio aceitável entre o tamanho do arquivo e a velocidade de compressão.
A configuração de compactação ideal depende do que e quando você está compactando. Um bom ponto de partida é o Brotli 4 para compressão mais rápida de conteúdo dinâmico. Por outro lado, os ativos estáticos podem ser compactados de forma mais densa de antemão, sem sacrificar a velocidade, de modo que a configuração padrão “11” é mais apropriada para esse conteúdo.
O Brotli é ótimo para fornecer ativos pré-compactados muito mais rápido do que o Gzip. Isso se deve ao fato de que você pode compactá-los no nível mais alto do Brotli e fazer com que o servidor de origem os pegue quando solicitado.
Este tipo de configuração funciona muito bem com o Webpack, pois um plugin Webpack está disponível para compactar automaticamente seus ativos estáticos como Gzip e Brotli. Portanto, nenhuma compactação dinâmica é necessária, o que significa que o tempo gasto na compactação dos arquivos é salvo.
A pequena quantidade de esforço necessária para adicionar o Brotli ao seu servidor web vale a pena comparada a economia substancial no tamanho do arquivo. Embora o Brotli às vezes funcione mais devagar nas configurações de compressão mais altas, você pode facilmente atingir um equilíbrio ideal entre a velocidade de compressão e o tamanho do arquivo ajustando as configurações.
Embora o uso do Brotli possa transformar aplicativos da web rápidos em mais rápidos, ele não necessariamente tornará aplicativos lentos mais rápidos. Uma vez que o Brotli comprime apenas ativos baseados em texto, você precisará otimizar as suas imagens por outros meios. Se você ainda não fez o salto para HTTP / 2, isso pode fazer uma grande diferença no desempenho do seu aplicativo. Cada milissegundo conta, portanto, qualquer ação que você execute para acelerar o seu aplicativo aumenta as suas chances de reter usuários.
Referencia: http://www.instantshift.com/2018/03/02/gzip-vs-brotli-compression/
A gestão de custos é um dos maiores desafios enfrentados pelas empresas, especialmente quando esses…
As startups, impulsionadas por inovação e agilidade, navegam em um cenário digital vibrante, mas também…
A segurança cibernética é crucial para startups, independentemente do seu tamanho ou setor de atuação.…
O gerenciamento de vulnerabilidades é o processo de identificar, avaliar, tratar e relatar vulnerabilidades de…
O DNS Cache Poisoning, ou envenenamento de cache DNS, é uma forma de ataque cibernético…
O DNS hijacking é um ataque malicioso que envolve a alteração das configurações de DNS…