Pular para o conteúdo

Arquitetura real · Sênior

Tráfego interno: do "aeroporto central" a sidecar, mTLS e Istio

A metáfora do aeroporto funciona em sala: passaporte = autenticação, imigração = autorização. Mais de 100 mil rotas num "caderno central" e a identidade evoluindo de token para JWT e depois mTLS.

17 min de leitura · Fonte: Mercado Livre · Conteúdo revisado em 23 de outubro de 2026

Resposta curta

A metáfora do aeroporto funciona em sala: passaporte = autenticação, imigração = autorização. Mais de 100 mil rotas num "caderno central" e a identidade evoluindo de token para JWT e depois mTLS. O tráfego interno do Fury, no relato da equipe de engenharia do Mercado Livre, lembrava um aeroporto caótico, com milhões de passageiros viajando para milhares de destinos.

01 · CONTEXTO

Um aeroporto caótico por dentro do Fury

O tráfego interno do Fury, no relato da equipe de engenharia do Mercado Livre, lembrava um aeroporto caótico, com milhões de passageiros viajando para milhares de destinos. Nesse aeroporto, todos viajavam sem passaportes, sem controles de imigração e sem fiscalização alfandegária.

Nos picos de acesso, o tráfego interno sozinho passa de 400M por minuto, com mais de 30k aplicações divididas em mais de 75k grupos de instâncias. Por isso, qualquer solução ou mudança precisa considerar essa escala.

  1. O diagrama mostra o acesso à plataforma entrando por uma camada de tráfego central, e uma seta de saída da aplicação A voltando para essa mesma camada.

    Diagrama da arquitetura: Tráfego interno centralizado
    CLAcesso à plataforma
    NWCamada de tráfego central
    CPAplicação A
    CPAplicação B
  2. O acesso entra pela camada de tráfego central, que roteia a requisição para a aplicação de destino.

    Diagrama da arquitetura: Tráfego interno centralizado
    CLAcesso à plataforma
    NWCamada de tráfego centralentrada central
    CPAplicação A
    CPAplicação B
  3. Quando uma aplicação precisa falar com outra, ela envia uma nova requisição de saída pela mesma camada, que a encaminha ao destino.

    Diagrama da arquitetura: Tráfego interno centralizado
    CLAcesso à plataforma
    NWCamada de tráfego centralpassa por aqui também
    CPAplicação A
    CPAplicação B
  4. A fonte descreve esse aeroporto central como o ponto de convergência de todos os voos.

    Diagrama da arquitetura: Tráfego interno centralizado
    CLAcesso à plataforma
    NWCamada de tráfego centralponto de convergência
    CPAplicação A
    CPAplicação B
  5. Do ponto de vista do destino, todos os voos parecem vir da mesma origem.

    Diagrama da arquitetura: Tráfego interno centralizado
    CLAcesso à plataforma
    NWCamada de tráfego central
    CPAplicação A
    CPAplicação Bvê a mesma origem

02 · IDENTIDADE

Sem passaporte e sem imigração

Muitas aplicações operavam sem autenticação adequada, então não era possível verificar a autenticidade da origem. Isso permitia que qualquer um dentro da plataforma usasse qualquer API sem nenhuma forma de controle.

Sem identidade também não havia como criar regras de acesso por cliente específico, porque não era possível identificá-los de forma única.

03 · ROTAS

Um caderno central e todos os caminhos levando a Roma

Toda rota e todo destino existente estavam escritos em um único lugar, o caderno central. Adicionar, remover ou alterar um destino exigia mudar esse mesmo caderno, e a fonte fala em mais de 100K rotas definidas.

A comunicação também era centralizada: mesmo entre aeroportos próximos, os passageiros faziam escala no aeroporto central antes de chegar ao destino. Para quem recebia, todos os voos pareciam vir da mesma origem.

04 · SIDECAR

Aeroportos locais: sidecar, certificados e mTLS

O primeiro passo foi aliviar o aeroporto central distribuindo os novos controles de segurança para aeroportos locais. Cada aeroporto local é um sidecar de tráfego que roda ao lado da aplicação, atuando como proxy reverso na entrada e como proxy transparente na saída.

O sidecar deu presença em todas as aplicações do ecossistema Fury e foi o pontapé para ter melhor controle, observabilidade e governança do tráfego. Na palestra da QCon SF, a equipe também cita o Traffic Middleware entre os sidecars da plataforma.

  1. O diagrama mostra um sidecar ao lado de cada aplicação, com a autoridade certificadora e o Traffic Authorization ligados aos sidecars.

    Diagrama da arquitetura: Sidecars, identidade e autorização
    CPAplicação A
    CPSidecar de A
    CPSidecar de B
    CPAplicação B
    CPAutoridade certificadora
    CPTraffic Authorization
  2. O sidecar roda ao lado da aplicação, como proxy reverso para o tráfego de entrada e proxy transparente para o de saída.

    Diagrama da arquitetura: Sidecars, identidade e autorização
    CPAplicação A
    CPSidecar de Aproxy ao lado da aplicação
    CPSidecar de B
    CPAplicação B
    CPAutoridade certificadora
    CPTraffic Authorization
  3. A autoridade certificadora gera os certificados na criação dos serviços ou escopos e os renova a cada deploy.

    Diagrama da arquitetura: Sidecars, identidade e autorização
    CPAplicação A
    CPSidecar de A
    CPSidecar de B
    CPAplicação B
    CPAutoridade certificadoraemite os passaportes
    CPTraffic Authorization
  4. Todo o tráfego é carimbado na origem e validado no destino.

    Diagrama da arquitetura: Sidecars, identidade e autorização
    CPAplicação A
    CPSidecar de Acarimba na origem
    CPSidecar de Bvalida no destino
    CPAplicação B
    CPAutoridade certificadora
    CPTraffic Authorization
  5. Na terceira versão da identidade, o mTLS é resolvido pelo sidecar e protege a comunicação nos dois sentidos.

    Diagrama da arquitetura: Sidecars, identidade e autorização
    CPAplicação A
    CPSidecar de AmTLS
    CPSidecar de BmTLS
    CPAplicação B
    CPAutoridade certificadora
    CPTraffic Authorization
  6. O Traffic Authorization guarda o que cada aplicação pode acessar, e o sidecar do destino aplica essas regras com filtros RBAC do Envoy.

    Diagrama da arquitetura: Sidecars, identidade e autorização
    CPAplicação A
    CPSidecar de A
    CPSidecar de Baplica as regras
    CPAplicação B
    CPAutoridade certificadora
    CPTraffic Authorizationdefine as políticas

Para identificar os passageiros, a equipe implantou uma autoridade certificadora que gera os certificados, os passaportes, na criação dos serviços ou escopos e os renova a cada deploy. O tráfego é carimbado na origem e validado no destino. A identidade passou por três versões:

VersãoFormato da identidadeComo a origem é validada
PrimeiraTexto simples com formato personalizado e assinaturaChave pública conhecida por todos os apps do ecossistema valida a assinatura
SegundaJSON Web Token (JWT)Chave pública conhecida por todos os apps do ecossistema valida a assinatura
TerceiraMutual TLS, resolvido pelo sidecar nos dois sentidosIdentidade da origem validada a partir do certificado, sem transportar o JWT

05 · AUTORIZAÇÃO

Imigração e rotas por equipe

Confirmada a identidade, entra a autorização. O Traffic Authorization permite que as equipes especifiquem os endpoints, métodos e domínios acessíveis em uma aplicação, bem como os necessários para interagir com outras. Com isso, o tráfego interno foi catalogado e é possível rastrear a origem e o destino de cada voo.

As regras começaram como validações personalizadas no destino, com Nginx, Lua e customizações em Golang. Na migração do sidecar de Nginx para Envoy, a equipe aproveitou para padronizar o processo e passou a usar filtros RBAC do Envoy.

No lado das rotas, o Traffic Routes dá a cada equipe de desenvolvimento um domínio próprio, onde ela mapeia caminhos para destinos. As equipes podem definir condições por cabeçalhos da requisição, parâmetros de consulta ou métodos HTTP, e testar as rotas antes de ir para produção.

06 · SERVICE MESH

A torre de controle: Istio

A fonte afirma que o service mesh reduz os congestionamentos, por exemplo removendo o balanceador e a camada de tráfego centralizada da equação, e que sem ele não teriam conseguido descentralizar todo o tráfego. No papel de torre de controle, o mesh direciona os voos por rotas seguras ou menos congestionadas.

Depois de analisar várias opções, inclusive desenvolvimento próprio, a equipe escolheu o plano de controle do Istio, entre outros fatores por ser uma solução madura e de código aberto com os recursos de que precisavam. A integração ao ecossistema Fury incluiu os processos de criação e deploy, os controles de segurança e a troca de informações de roteamento com o Traffic Routes.

  1. O diagrama mostra um sidecar ao lado de cada aplicação, com o plano de controle do mesh ligado aos sidecars e o Traffic Routes ligado ao plano de controle.

    Diagrama da arquitetura: Tráfego com service mesh
    CLAcesso à plataforma
    NWCamada de tráfego de entrada
    CPSidecar de A
    CPAplicação A
    CPSidecar de B
    CPAplicação B
    CPTraffic Routes
    CPPlano de controle do mesh
  2. O acesso à plataforma continua começando pela camada de tráfego centralizada.

    Diagrama da arquitetura: Tráfego com service mesh
    CLAcesso à plataforma
    NWCamada de tráfego de entradaentrada central
    CPSidecar de A
    CPAplicação A
    CPSidecar de B
    CPAplicação B
    CPTraffic Routes
    CPPlano de controle do mesh
  3. A requisição é interceptada pelo sidecar, que a repassa à aplicação.

    Diagrama da arquitetura: Tráfego com service mesh
    CLAcesso à plataforma
    NWCamada de tráfego de entrada
    CPSidecar de Aintercepta
    CPAplicação A
    CPSidecar de B
    CPAplicação B
    CPTraffic Routes
    CPPlano de controle do mesh
  4. Na comunicação entre aplicações, a requisição de saída é interceptada pelo sidecar e roteada direto ao próximo destino.

    Diagrama da arquitetura: Tráfego com service mesh
    CLAcesso à plataforma
    NWCamada de tráfego de entrada
    CPSidecar de Aintercepta a saída
    CPAplicação A
    CPSidecar de Brecebe direto
    CPAplicação B
    CPTraffic Routes
    CPPlano de controle do mesh
  5. O mesh faz o papel da torre de controle, direcionando os voos por rotas seguras ou menos congestionadas.

    Diagrama da arquitetura: Tráfego com service mesh
    CLAcesso à plataforma
    NWCamada de tráfego de entrada
    CPSidecar de A
    CPAplicação A
    CPSidecar de B
    CPAplicação B
    CPTraffic Routes
    CPPlano de controle do meshtorre de controle
  6. A integração do Istio ao Fury inclui a troca de informações de roteamento com o Traffic Routes.

    Diagrama da arquitetura: Tráfego com service mesh
    CLAcesso à plataforma
    NWCamada de tráfego de entrada
    CPSidecar de A
    CPAplicação A
    CPSidecar de B
    CPAplicação B
    CPTraffic Routesrotas por equipe
    CPPlano de controle do mesh

Perguntas frequentes

O que é Tráfego interno: do "aeroporto central" a sidecar, mTLS e Istio?

A metáfora do aeroporto funciona em sala: passaporte = autenticação, imigração = autorização. Mais de 100 mil rotas num "caderno central" e a identidade evoluindo de token para JWT e depois mTLS.

O que o design de Tráfego interno: do "aeroporto central" a sidecar, mTLS e Istio cobre?

Ele está organizado nestas seções: Um aeroporto caótico por dentro do Fury, Sem passaporte e sem imigração, Um caderno central e todos os caminhos levando a Roma, Aeroportos locais: sidecar, certificados e mTLS, Imigração e rotas por equipe e A torre de controle: Istio.

Quanto tempo leva Tráfego interno: do "aeroporto central" a sidecar, mTLS e Istio e qual é o nível?

Leva cerca de 17 minutos para ler e tem nível Sênior.

Agora projete você mesmo

Rode este caso como uma entrevista na escola de System Design: você toma as decisões, o tutor as questiona e você vê a nota do seu desenho.