Como funciona uma requisição web
Quando você digita um endereço no navegador e aperta Enter, muita coisa acontece em milissegundos. Entender esse caminho ajuda a achar gargalos e a desenhar sistemas melhores. Vamos seguir uma requisição do início ao fim.
Visão geral do fluxo
Navegador
|
1. DNS: nome -> IP
2. TCP: abre conexão
3. TLS: criptografia (https)
4. HTTP: envia request
|
Servidor processa
|
5. HTTP: devolve response
6. Navegador renderiza
1. DNS: traduzindo o nome
O computador não sabe o que é exemplo.com. Ele pergunta ao DNS, que funciona como uma agenda telefônica, e recebe um IP, por exemplo 93.184.216.34. Essa resposta costuma ficar em cache para acelerar próximas visitas.
2. TCP: abrindo o canal
Com o IP em mãos, o navegador abre uma conexão TCP com o servidor. O TCP garante que os dados cheguem inteiros e na ordem certa. Ele começa com um “aperto de mão” de três passos (SYN, SYN-ACK, ACK).
3. TLS: deixando seguro
Em sites https, depois do TCP vem o handshake TLS. Servidor e navegador combinam chaves de criptografia. A partir daí tudo trafega cifrado, protegendo senhas e dados.
4. HTTP request
Agora o navegador pede a página de fato:
GET /index.html HTTP/1.1
Host: exemplo.com
User-Agent: Mozilla/5.0
Accept: text/html
5. HTTP response
O servidor responde com um status e o conteúdo:
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1024
<!DOCTYPE html>
<html>...</html>
6. Render no navegador
Com o HTML em mãos, o navegador monta a árvore da página (DOM), baixa recursos extras (CSS, JS, imagens) e desenha tudo na tela. Cada recurso pode disparar novas requisições, repetindo parte do ciclo.
Por que isso importa
- DNS lento atrasa tudo: vale usar cache e provedores rápidos.
- TLS adiciona custo: conexões reaproveitadas ajudam.
- Menos requisições e arquivos menores deixam a página mais veloz.
Saber cada etapa permite medir onde está o tempo perdido e atacar o ponto certo.