Compressão Gzip e Brotli

Definição

Gzip e Brotli são algoritmos de compressão utilizados para reduzir o tamanho dos arquivos transferidos pela web, como HTML, CSS, JavaScript, JSON e SVG.

A compressão ocorre no servidor, e os dados são descomprimidos automaticamente pelo navegador, sem qualquer intervenção do usuário.
O resultado é uma transferência mais rápida e economia de banda, especialmente importante em dispositivos móveis e conexões lentas.

Objetivos da compressão com Gzip e Brotli

  • Reduzir o volume de dados trafegados entre cliente e servidor.
  • Diminuir o tempo de carregamento das páginas web.
  • Aumentar a performance e a experiência do usuário.
  • Melhorar a eficiência do servidor e das redes de distribuição (CDNs).

Exemplo prático — Como a compressão aparece no HTTP

Quando o navegador faz uma requisição, ele informa os algoritmos que aceita:

GET /index.html HTTP/1.1
Host: programicio.com
Accept-Encoding: gzip, br

O servidor responde com a versão comprimida, junto com o cabeçalho Content-Encoding:

HTTP/1.1 200 OK
Content-Encoding: br
Content-Type: text/html

Nesse caso, o conteúdo foi comprimido com Brotli (br), pois é mais eficiente que Gzip e suportado por todos os navegadores modernos.

Comparação entre Gzip e Brotli

Característica Gzip Brotli
Eficiência de compressão Boa Excelente
Tamanho final Reduzido Ainda menor
Velocidade de compressão Mais rápida Mais lenta
Ideal para Conteúdo dinâmico Conteúdo estático
Suporte em navegadores Amplo Amplo (moderno)

ℹ️ Brotli é mais eficiente em termos de compressão, mas também mais lento para comprimir. Por isso, é ideal para conteúdo estático pré-comprimido durante o build.

O ciclo de compressão Gzip/Brotli

[Navegador envia uma requisição com Accept-Encoding: gzip, br]
        ↓
[Servidor identifica e aplica o algoritmo de compressão disponível]
        ↓
[Resposta inclui o cabeçalho Content-Encoding: gzip ou br]
        ↓
[Navegador descomprime automaticamente e exibe o conteúdo]

A compressão é mais efetiva em arquivos de texto, como HTML, CSS, JS e JSON. Arquivos binários como imagens, vídeos e PDFs já costumam estar comprimidos e não se beneficiam de Gzip ou Brotli.

Relacionados

Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com