AdTech

Engenharia de infraestrutura de real-time bidding para 100K QPS

Sistemas de RTB precisam avaliar, pontuar e responder a bid requests em até 10ms, a 100.000+ consultas por segundo. Veja como a infraestrutura funciona nessa escala.

Por amBrain Engineering8 min de leitura

Neste artigo

Uma bid request chega do ad exchange. A infraestrutura de bidding tem 10ms para avaliar a impressão, pontuá-la contra as campanhas ativas, calcular um preço de lance e devolver uma resposta.

Perdeu o prazo, a impressão se foi. Não há nova tentativa. A 100.000+ QPS, mesmo uma taxa de timeout de 1% significa 1.000 oportunidades perdidas por segundo.

Coloque os bidders em co-location com as exchanges para recuperar tempo de avaliação

A latência de rede entre o bidder e o ad exchange reduz diretamente o tempo disponível para avaliar o lance. Um bidder a 50ms de distância de rede da exchange já perdeu antes de o seu código rodar.

Times de desenvolvimento de DSP que mantêm instâncias de bidder em co-location com as grandes exchanges recuperam milissegundos críticos:

  • Operar em 6-8 data centers globais recupera 5-15ms de tempo de avaliação por requisição em comparação com um deploy centralizado
  • Grupos de auto-scaling em cada região respondem aos padrões de tráfego - o US East atinge o pico no horário comercial enquanto o APAC reduz a capacidade
  • Instâncias regionais de bidder mantêm cópias locais dos dados de segmentação de campanha, sincronizadas a cada 5-10 segundos com o repositório central
  • Cabos de fibra óptica entre data centers carregam o tráfego de sincronização, mas o caminho de avaliação do bid nunca cruza fronteiras regionais

A escolha do data center é uma decisão de engenharia de primeira ordem para qualquer demand-side platform. Cada milissegundo de distância de rede se traduz diretamente em win rates menores.

Infraestrutura de servidores em data center com fileiras de racks
A co-location com ad exchanges recupera 5-15ms de tempo de avaliação por bid request

Elimine a alocação de memória do hot path de avaliação de bids

A 100K QPS, os padrões de alocação de memória determinam se o sistema cumpre seu orçamento de latência. Pausas de garbage collection invisíveis a 100 QPS tornam-se catastróficas em escala.

O caminho de avaliação do lance usa técnicas específicas:

  • Tabelas de lookup pré-computadas para critérios de segmentação de campanha, frequency caps e restrições de orçamento - atualizadas de forma assíncrona a cada 5-10 segundos a partir do repositório principal de campanhas
  • Object pooling e arena allocation para eliminar por completo as alocações de heap por requisição
  • Estruturas de dados sem locks para estado compartilhado - bloom filters para frequency capping, contadores atômicos para o pacing de orçamento
  • Árvores de decisão pré-construídas para a avaliação de targeting - construir a árvore custa segundos, avaliá-la custa microssegundos

Zero alocação no hot path não é uma otimização. É um requisito a 100K QPS.

Rode a inferência do modelo de ML em menos de 3ms por lance

Modelos de previsão de click-through rate e de probabilidade de conversão precisam executar a inferência em 2-3ms como parte do pipeline geral de avaliação do lance. Cada milissegundo gasto em inferência deixa de estar disponível para o restante da lógica de lance.

O ONNX Runtime com modelos quantizados em INT8 oferece o melhor trade-off entre latência e acurácia:

  • Extração de features do bid request em menos de 0.5ms usando feature stores pré-computados com sinais de usuário e de contexto
  • Inferência de modelo em 1-2ms com avaliação ONNX em batch e execução com threads fixadas - sem troca de contexto durante o scoring
  • Calibração de score e cálculo do preço do bid em menos de 0,5ms usando curvas de preço pré-computadas por tier de campanha
  • Atualizações de modelo publicadas por blue-green switching - o novo modelo carrega em shadow mode, valida contra as previsões de produção e então troca atomicamente
Infraestrutura de servidores em um data center de alta performance
Inferência de ML a 100K QPS exige serving de modelos otimizado para hardware, com zero overhead de alocação

Monitorar em escala sem adicionar overhead ao caminho do bidding

Logging tradicional a 100K QPS gera mais carga do que a própria lógica de bidding. A stack de monitoramento precisa ser tão consciente de performance quanto a aplicação:

  • Coleta de métricas por amostragem - registre 1 a cada 1.000 requisições em detalhe e agregue o restante em contadores e histogramas atualizados atomicamente
  • Acompanhamento de percentis em tempo real em p50, p95 e p99 por região, por ad exchange e por tier de campanha
  • Circuit breakers automáticos que retiram uma instância de bidder da rotação quando seus tempos de resposta p99 excedem o timeout da exchange
  • Detecção de anomalias em quedas da taxa de lances, mudanças de win rate e desvios na velocidade de gasto - identificando modelos desatualizados e degradação de rede mais rápido que o monitoramento por taxa de erro

Cuide do lado SSP da equação do leilão

Uma supply-side platform enfrenta o problema espelhado. Ela transmite bid requests a dezenas de compradores, coleta respostas, avalia preços mínimos, roda o leilão e devolve um vencedor - tudo dentro do seu próprio timeout apertado.

As equipes de desenvolvimento de SSP enfrentam complexidade adicional:

  • Header bidding significa rodar vários leilões em paralelo - o timeout de cada bidder é o orçamento de latência do SSP
  • A otimização de preço mínimo com modelos de ML precisa executar dentro da mesma janela de leilão sem adicionar latência
  • A lógica de leilão de alta performance avalia 20-50 respostas de lance por impressão, escolhendo o vencedor em menos de 1ms

Publicidade programática em escala exige que os dois lados do leilão otimizem sem trégua para baixa latência.

Adaptar a infraestrutura de bidding para inventário de apps mobile e in-app

Bid requests in-app carregam sinais diferentes dos da web. Identificadores de dispositivo (quando disponíveis), contexto do app e viewability reportada pelo SDK substituem os sinais baseados em cookies.

Modelos de click-through rate treinados em inventário web precisam de retreinamento para contextos in-app, onde os padrões de interação do usuário são bem diferentes.

  • A modelagem de atribuição em mobile exige integração de postback server-to-server com MMPs
  • A deduplicação entre múltiplas janelas de atribuição evita contar conversões em dobro
  • A reconciliação de matches probabilísticos e determinísticos roda de forma assíncrona - os resultados retornam ao modelo de bidding em até 24 horas

Uma plataforma de real-time bidding construída apenas para inventário web deixa 40-60% do investimento em publicidade programática na mesa. Mobile e in-app exigem investimento dedicado em infraestrutura.

Temas

  • Plataforma de real-time bidding
  • Desenvolvimento de DSP
  • Desenvolvimento de SSP
  • Ad Exchange
  • Publicidade programática
  • Infraestrutura de bidding
  • Click-Through Rate
  • Baixa latência
  • Data centers
  • Alta performance

Está construindo uma DSP, um bidder ou uma ad exchange?

Envie o design ou o problema que você está resolvendo, e os números que você já tem.

Conte sobre o seu projeto

Respondemos em até 24 horas com um plano de ação claro.

Tem um projeto assim na mesa?

Respondemos em até 24 horas com um plano de ação claro.

Call inicial gratuita sobre o projeto · 30 minutos