O que é um Load Balancer? Distribuindo Tráfego entre Servidores
Um load balancer fica na frente de múltiplos servidores e distribui as requisições de entrada entre eles, para que nenhum servidor fique sobrecarregado e o serviço permaneça disponível se um falhar.
Quando um servidor não é suficiente, você executa vários e coloca um load balancer na frente. Ele espalha as requisições entre as instâncias saudáveis, remove as que falharam da rotação e apresenta um único endpoint estável aos clientes. Load balancers são fundamentais para escalar e para deploys sem downtime.
Como ele distribui o tráfego
Um load balancer usa um algoritmo (round robin, least connections ou outros) para escolher qual backend atende cada requisição. Ele executa health checks e para de enviar tráfego a qualquer instância que falha, para que os usuários não acessem servidores quebrados.
Camada 4 vs camada 7
Um load balancer de camada 4 roteia por IP e porta (TCP/UDP), rápido mas sem conhecer o conteúdo. Um load balancer de camada 7 entende HTTP, então pode rotear por path ou host, terminar TLS e aplicar regras em nível de aplicação. Application Load Balancers são de camada 7.
O que ele viabiliza
- Escalabilidade horizontal em muitas instâncias.
- Alta disponibilidade quando uma instância falha.
- Terminação de TLS em um único ponto.
- Roteamento baseado em path e host para diferentes serviços.
Health checks
O load balancer testa periodicamente cada backend. Uma instância que falha no health check é retirada da rotação até se recuperar. É isso que permite substituir instâncias durante um deploy sem que os usuários percebam.
Papel no CI/CD
Load balancers tornam possíveis os deploys sem downtime: um pipeline sobe novas instâncias, espera que elas passem nos health checks, transfere o tráfego para elas e então drena as antigas. As estratégias rolling, blue-green e canary dependem todas do load balancer para controlar qual versão recebe tráfego.
Principais conclusões
- Um load balancer espalha o tráfego entre backends saudáveis por trás de um único endpoint.
- A camada 4 roteia por IP e porta; a camada 7 entende HTTP para um roteamento mais rico.
- Health checks e mudança de tráfego permitem deploys rolling e blue-green sem downtime.