Pular para o conteudo principal

Sticky Session

O que sticky session significa no balanceamento, por que ela simplifica alguns fluxos e por que também cria acoplamento que cobra caro depois.

Andrews Ribeiro

Andrews Ribeiro

Founder & Engineer

O que é

Sticky session é quando o balanceador tenta mandar o mesmo usuário para a mesma instância repetidamente.

Na prática, ele “cola” uma sessão naquele servidor por um tempo.

Quando importa

Isso costuma aparecer quando parte do estado ainda está na memória da aplicação:

  • sessão de usuário
  • carrinho
  • wizard multi-etapa

É uma forma rápida de fazer a coisa funcionar sem externalizar esse estado logo de cara.

Erro comum

O erro clássico é tratar sticky session como solução de arquitetura, quando muitas vezes ela é só uma muleta temporária.

Se a instância cai, aquele estado local some.

E se o tráfego fica mal distribuído, algumas instâncias esquentam mais do que outras.

Exemplo curto

Um app guarda sessão na memória local do Node.

Com sticky session, o usuário continua caindo na mesma instância e parece que tudo funciona.

Sem isso, cada request poderia bater em um servidor diferente e “perder” a sessão.

Por que ajuda

Sticky session pode simplificar uma fase inicial.

Mas ela cria dependência de estado local e costuma atrapalhar:

  • failover
  • autoscaling
  • distribuição equilibrada

Sticky session resolve o sintoma rápido. Externalizar estado resolve a causa.

Você concluiu este artigo

Continue explorando

Artigos relacionados