Skip to content
Latchkey

O que é um Reverse Proxy? O Servidor na Frente dos Seus Servidores

Um reverse proxy é um servidor que fica na frente dos seus servidores backend, recebendo requisições dos clientes e as encaminhando, enquanto lida com aspectos como TLS, cache e roteamento.

Um forward proxy age em nome dos clientes; um reverse proxy age em nome dos servidores. Os clientes se conectam ao reverse proxy como se ele fosse a aplicação, e ele encaminha as requisições para um ou mais backends atrás dele. Nginx, HAProxy, Envoy e Traefik são reverse proxies comuns, e eles são a base de load balancers e API gateways.

O que um reverse proxy faz

  • Termina o TLS para que os backends falem HTTP simples internamente.
  • Roteia requisições por host ou path para diferentes serviços.
  • Faz cache de respostas para reduzir a carga no backend.
  • Adiciona rate limiting, compressão e headers de segurança.

Reverse proxy vs load balancer

Os dois se sobrepõem bastante. Um load balancer distribui tráfego entre instâncias; um reverse proxy encaminha e transforma requisições. A maioria dos load balancers de camada 7 são reverse proxies, e a maioria dos reverse proxies pode balancear carga, então os rótulos frequentemente descrevem o mesmo componente desempenhando papéis diferentes.

Por que os backends ficam atrás de um

Colocar um reverse proxy na frente centraliza aspectos transversais: um único lugar para gerenciar certificados, roteamento e rate limits. Os backends permanecem simples e não ficam expostos diretamente à internet, o que melhora tanto a segurança quanto a manutenibilidade.

Em plataformas de containers

No Kubernetes, um ingress controller é um reverse proxy que roteia o tráfego externo para os serviços. Em plataformas PaaS, um reverse proxy gerenciado lida com TLS e roteamento para você. O padrão é o mesmo: uma porta de entrada inteligente na frente das suas apps.

Papel no CI/CD

Durante os deploys, um reverse proxy ou ingress decide qual versão de um serviço recebe tráfego, viabilizando releases rolling e canary. Os pipelines frequentemente atualizam a configuração do ingress ou do proxy para transferir tráfego para uma nova release, e o proxy mantém o TLS e o roteamento estáveis ao longo dos deploys.

Principais conclusões

  • Um reverse proxy fica na frente dos seus backends, lidando com TLS, roteamento e cache.
  • Ele se sobrepõe aos load balancers; balanceadores de camada 7 são reverse proxies.
  • No CI/CD, ele controla o roteamento de tráfego para deploys rolling e canary.

Guias relacionados