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 grande revisão do protocolo HTTP (normalizado como RFC 7540) que introduz enquadramento binário, multiplexamento, compressão de cabeçalhos, e servidor push para melhorar dramaticamente o desempenho web sobre HTTP/1.1.

HTTP/2 vs HTTP/1.1

CaracterísticaHTTP/1.1HTTP/2
FormatoBaseado em textoBinário
LigaçõesMúltiplo (6-8 por máquina)Multiplexado único
Pedido de tratamentoSequencialFluxos paralelos
Compressão do cabeçalhoNenhumCompressão HPACK
Servidor pushNão disponívelSuportado
PriorizaçãoNenhumPrioridades do 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

Características chave

# Camada Binary Framing

HTTP/2 Frame Structure:

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

│ Length (24 bits) │

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

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

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

│ Stream Identifier (32 bits) │

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

│ Frame Payload (variable) │

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

Compressão do Cabeçalho HPACK

CenárioCabeçalhos HTTP/1.1Cabeçalhos HTTP/2
Primeiro pedido~800 bytes~800 bytes
Pedidos posteriores~800 bytes cada~20-50 bytes (indexados)

Priorização do fluxo

Priority Tree:

Root (connection)

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

├── JavaScript (weight: 220)

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

Requisitos do servidor

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

Benefícios de Desempenho

Melhores Práticas

1. Enable TLS: HTTP/2 praticamente requer HTTPS (browsers executá-lo)

2. Reduzir o domínio de raspagem: Vários domínios agora prejudicam o desempenho

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

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

5. Desempenho do monitor: Verificar HTTP/2 melhora seu caso de uso específico

HTTP/2 oferece melhorias significativas de desempenho para a maioria dos sites através do uso mais eficiente de conexões de rede.

Coloque este Conhecimento em Prática

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