HTTP/2

Protocolos e Padrões
Uma revisão maior de HTTP que introduz multiplexagem, compressão de cabeçalhos e desempenho melhorado em relação a HTTP/1.1.
← Voltar ao Glossário

O que é HTTP/2?

HTTP/2 é uma revisão importante do protocolo HTTP (padronizada pela RFC 7540) que introduz enquadramento binário, multiplexação, compressão de cabeçalhos e push do servidor para melhorar significativamente o desempenho web em relação ao HTTP/1.1.

HTTP/2 em comparação com HTTP/1.1

RecursoHTTP/1.1HTTP/2
FormatoBaseado em textoBinário
ConexõesMúltiplas (6 a 8 por host)Uma única multiplexada
Tratamento de requisiçõesSequencialFluxos paralelos
Compressão de cabeçalhosNenhumaCompressão HPACK
Push do servidorIndisponívelCompatível
PriorizaçãoNenhumaPrioridades de fluxo

Como funciona o HTTP/2

HTTP/1.1 (Head-of-Line Blocking):

Connection 1: Request A ──────────► Response A

Connection 2: Request B ──────────► Response B

Connection 3: Request C ──────────► Response C

(Multiple connections, sequential per connection)

HTTP/2 (Multiplexing):

Single Connection:

├── Stream 1: Request A ──► Response A

├── Stream 2: Request B ──► Response B

├── Stream 3: Request C ──► Response C

└── All interleaved on same connection

Principais recursos

Camada de enquadramento binário

HTTP/2 Frame Structure:

┌─────────────────────────────────────┐

│ Length (24 bits) │

├─────────────────────────────────────┤

│ Type (8 bits) │ Flags (8 bits) │

├─────────────────────────────────────┤

│ Stream Identifier (32 bits) │

├─────────────────────────────────────┤

│ Frame Payload (variable) │

└─────────────────────────────────────┘

Compressão de cabeçalhos HPACK

CenárioCabeçalhos HTTP/1.1Cabeçalhos HTTP/2
Primeira requisição~800 bytes~800 bytes
Requisições seguintes~800 bytes cada~20-50 bytes (indexados)

Priorização de fluxos

Priority Tree:

Root (connection)

├── CSS (weight: 256, high priority)

├── JavaScript (weight: 220)

└── Images (weight: 110, lower priority)

Requisitos do servidor

ServidorSuporte a HTTP/2
nginx1.9.5+
Apache2.4.17+ (mod_http2)
Node.js8.4+ (nativo)
IISWindows 10/Server 2016+

Benefícios de desempenho

Boas práticas

1. Ative TLS: HTTP/2 exige HTTPS na prática (os navegadores o impõem)

2. Reduza o domain sharding: vários domínios agora prejudicam o desempenho

3. Pare de concatenar arquivos: a multiplexação torna o agrupamento menos necessário

4. Use o push do servidor com cuidado: envie apenas recursos críticos

5. Monitore o desempenho: verifique se HTTP/2 melhora seu caso de uso específico

HTTP/2 oferece melhorias significativas de desempenho para a maioria dos sites por usar as conexões de rede com mais eficiência.

Coloque este Conhecimento em Prática

Use a API DomScan para verificar disponibilidade de domínio, saúde e muito mais.