Pular para o conteúdo

Arquitetura real · Pleno

Pokémon GO 2016: 50x o tráfego previsto no lançamento

Arquitetura real em produção. Pontos centrais: estimativa de capacidade.

15 min de leitura · Fonte: Pokémon GO · Conteúdo revisado em 23 de outubro de 2026

Resposta curta

Arquitetura real em produção. Pontos centrais: estimativa de capacidade. Pokémon GO era um aplicativo móvel que usou mais de uma dúzia de serviços do Google Cloud.

01 · CONTEXTO

Um lançamento que ninguém dimensionou

Pokémon GO era um aplicativo móvel que usou mais de uma dúzia de serviços do Google Cloud.

O lançamento foi também a estreia de uma equipe nova do Google, a Customer Reliability Engineering (CRE). Seu primeiro cliente foi a Niantic, e a primeira missão foi justamente esse lançamento. A CRE é um modelo em que técnicos do Google se integram às equipes do cliente, criando responsabilidade compartilhada pela confiabilidade de aplicações críticas.

02 · A ESTIMATIVA E A REALIDADE

Alvo, pior caso e o que de fato chegou

A equipe mirou um tráfego de referência, chamado de 1X, e estimou um pior caso de cerca de 5X esse alvo. O tráfego real chegou a 50X o alvo inicial, dez vezes o pior caso. Uma segunda fonte resume o mesmo ponto como tráfego 50 vezes além do esperado.

CenárioMúltiplo do alvo de tráfego
Alvo de tráfego1X
Pior caso estimadocerca de 5X o alvo
Tráfego real50X o alvo inicial
Real em relação ao pior casodez vezes maior

O Cloud Datastore era o banco principal do jogo para registrar o mundo de Pokémon e virou um indicador direto da popularidade do jogo.

Em até 15 minutos do lançamento na Austrália e na Nova Zelândia, o tráfego passou bem da expectativa da Niantic. A empresa pediu reforço à CRE por causa do lançamento nos EUA, planejado para o dia seguinte.

03 · A ARQUITETURA

Jogadores, balanceador, contêineres e banco

A lógica da aplicação roda no Google Container Engine (GKE), baseado no Kubernetes. A Niantic o escolheu por orquestrar o cluster de contêineres em escala planetária, e o jogo foi o maior deployment de Kubernetes no Container Engine até então.

  1. O aplicativo no celular dos jogadores gera o tráfego que chega ao jogo.

    Diagrama da arquitetura: Pokémon GO: arquitetura inicial
    CLJogadores no celularjogadores
    NWNetwork Load Balancer
    CPLógica do jogo no GKE
    DBCloud Datastore
  2. Antes da troca, o tráfego passava pelo Network Load Balancer, que depois foi substituído.

    Diagrama da arquitetura: Pokémon GO: arquitetura inicial
    CLJogadores no celular
    NWNetwork Load Balancerbalanceador de rede
    CPLógica do jogo no GKE
    DBCloud Datastore
  3. A lógica do jogo roda num cluster de contêineres no GKE, orquestrado pelo Kubernetes.

    Diagrama da arquitetura: Pokémon GO: arquitetura inicial
    CLJogadores no celular
    NWNetwork Load Balancer
    CPLógica do jogo no GKEcluster de contêineres
    DBCloud Datastore
  4. O Cloud Datastore guarda o mundo do jogo e serve de termômetro da demanda.

    Diagrama da arquitetura: Pokémon GO: arquitetura inicial
    CLJogadores no celular
    NWNetwork Load Balancer
    CPLógica do jogo no GKE
    DBCloud Datastorebanco principal

Em português simples: balanceador de carga na frente, uma camada de aplicação que se amplia adicionando nós e um banco gerenciado atrás. O caso mostra o que fazer quando essa estrutura precisa crescer muito além do previsto.

04 · ESCALAR EM PLENO VOO

Trocar o motor com o avião voando

Em preparação para o lançamento no Japão, a Niantic e a CRE fizeram o upgrade para uma versão nova do GKE, que permitia adicionar mais de mil nós ao cluster. A troca de versão foi feita com cuidado para não interromper jogadores existentes, enquanto milhões de novos jogadores entravam.

Na mesma linha, as equipes trocaram o Network Load Balancer pelo HTTP/S Load Balancer, um sistema global para tráfego HTTPS, com mais controle, conexões mais rápidas e maior vazão.

Do lado da capacidade, a CRE provisionou capacidade extra em nome da Niantic para ficar à frente do crescimento, e o Google provisionou muitas dezenas de milhares de núcleos para o cluster do jogo.

  1. O cluster do GKE foi atualizado para comportar mais de mil nós adicionais, sem tirar o jogo do ar.

    Diagrama da arquitetura: Pokémon GO: depois dos ajustes
    CLJogadores no celular
    NWHTTP/S Load Balancer
    CPLógica do jogo no GKEcluster ampliado
    DBCloud Datastore
  2. O balanceador de rede deu lugar ao HTTP/S Load Balancer, global e com mais vazão.

    Diagrama da arquitetura: Pokémon GO: depois dos ajustes
    CLJogadores no celular
    NWHTTP/S Load Balancerbalanceador HTTP/S
    CPLógica do jogo no GKE
    DBCloud Datastore
  3. A CRE provisionou capacidade extra para a Niantic, mantendo o banco à frente do crescimento.

    Diagrama da arquitetura: Pokémon GO: depois dos ajustes
    CLJogadores no celular
    NWHTTP/S Load Balancer
    CPLógica do jogo no GKE
    DBCloud Datastorecapacidade extra
  4. Com os ajustes, o lançamento no Japão ocorreu sem incidentes.

    Diagrama da arquitetura: Pokémon GO: depois dos ajustes
    CLJogadores no celular
    NWHTTP/S Load Balancer
    CPLógica do jogo no GKE
    DBCloud Datastore

05 · RESULTADO E LIÇÕES

O que compensou e o que sobrou

As lições do lançamento nos EUA (capacidade generosa, versão nova do Container Engine e HTTP/S Load Balancer) compensaram quando o jogo foi lançado no Japão sem incidentes. Lá, o número de novos usuários foi o triplo do lançamento nos EUA duas semanas antes.

Nem tudo correu bem no lançamento. Engenheiros da Niantic e do Google trataram cada problema em sequência, criando e implantando soluções. Pela escala do cluster, muitos bugs foram identificados, corrigidos e incorporados ao projeto open source do Kubernetes.

Perguntas frequentes

O que é Pokémon GO 2016: 50x o tráfego previsto no lançamento?

Arquitetura real em produção. Pontos centrais: estimativa de capacidade.

O que o design de Pokémon GO 2016: 50x o tráfego previsto no lançamento cobre?

Ele está organizado nestas seções: Um lançamento que ninguém dimensionou, Alvo, pior caso e o que de fato chegou, Jogadores, balanceador, contêineres e banco, Trocar o motor com o avião voando e O que compensou e o que sobrou.

Quanto tempo leva Pokémon GO 2016: 50x o tráfego previsto no lançamento e qual é o nível?

Leva cerca de 15 minutos para ler e tem nível Pleno.

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.