O que é load balancer?

Um load balancer (ou balanceador de carga) é um sistema responsável por distribuir requisições de clientes entre múltiplas instâncias de um serviço. O objetivo é evitar que um único servidor fique sobrecarregado e garantir que a aplicação continue funcionando mesmo se uma instância falhar.

Ele atua como uma “porta de entrada” centralizada: todo o tráfego chega ao load balancer, que decide para qual servidor enviar, conforme critérios definidos.

Principais funções

  1. Distribuição de carga:
    Reparte o tráfego entre várias máquinas para evitar gargalos.

  2. Alta disponibilidade:
    Se uma instância cair, o load balancer automaticamente envia o tráfego para outras saudáveis.

  3. Escalabilidade:
    Permite adicionar ou remover servidores sem impactar os usuários.

  4. Health checks:
    Testa continuamente se as instâncias estão funcionando.

  5. Segurança:
    Pode atuar como ponto de controle, aplicando regras, TLS termination etc.

Tipos de Load Balancer

  • L4 (Camada de Transporte – TCP/UDP):
    Balanceia com base em IP e porta. É mais rápido e simples.

  • L7 (Camada de Aplicação – HTTP/HTTPS):
    Analisa o conteúdo da requisição (ex.: URL, headers) e toma decisões mais inteligentes.

Exemplos práticos

  • AWS ELB (ALB, NLB, CLB)

  • NGINX

  • HAProxy

  • Traefik

  • LoadBalancer Service no Kubernetes

Analogia simples

Imagine uma fila de atendimento:
O load balancer é o funcionário na porta encaminhando cada pessoa para o caixa mais disponível, garantindo que o atendimento flua sem congestionamentos.




Apenas usuários conectados podem enviar perguntas...