O que é Afinidade de Sessão
Afinidade de Sessão (Session Affinity), também chamada de sticky sessions, é uma técnica de balanceamento de carga que garante que todas as requisições de um mesmo usuário sejam direcionadas para o mesmo servidor backend durante a sessão. Sem ela, em ambientes com múltiplos servidores, cada requisição poderia ir para um servidor diferente — perdendo dados de sessão como login, carrinho de compras e preferências.
A afinidade de sessão é configurada no load balancer (Nginx, HAProxy, AWS ALB) e pode usar diferentes métodos para identificar o usuário: cookies, hash de IP ou headers HTTP.

Métodos de afinidade
- Cookie-based: O load balancer insere um cookie que identifica o servidor atribuído (método mais confiável)
- IP Hash: Usa o IP do cliente para calcular qual servidor recebe as requisições (simples, mas falha com NAT)
- Header-based: Usa um header HTTP customizado para rotear (usado em APIs)
Quando usar (e quando não usar)
Usar: Aplicações que armazenam sessão em memória local do servidor (PHP sessions, uploads em andamento). Não usar: Quando a sessão é armazenada em store distribuído (Redis, Memcached, banco de dados) — nesse caso, qualquer servidor pode atender qualquer requisição.
Leia o artigo completo: O que é Afinidade de Sessão? Como funciona e quando usar

