한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Guia do Lag em Jogos › L13 Arquitetura e operação de servidores

Dependência de serviços externos External dependencies (auth, billing, platform)

ID da causa in-external · Responsável principal Externo (Externo) · Também envolvidos Desenvolvimento do servidor (Equipe de desenvolvimento)

Abrir o card interativo, com figuras e simulações →

Quando um serviço externo, como login da plataforma, pagamento ou verificação de identidade, fica lento ou para, o jogador fica preso nessa etapa.

Por quê Falha ou lentidão no serviço externo de autenticação ou pagamento → Efeito Espera pela resposta nessa etapa → Na tela Não consegue fazer login, pagamento falha. Quem já está jogando não é afetado

Sintomas
Não conecta / loading infinito, Ação perdida / rollback
Fatores
Paralisação
Quem é afetado
Servidor inteiro, Só um recurso específico
Quando
Logo após login ou manutenção, Ao fazer ações específicas
Responsável
Responsável principal Externo (Externo) · Também envolvidos Desenvolvimento do servidor (Equipe de desenvolvimento)
O que fazer (Equipe de desenvolvimento)
Timeout e mensagem clara nas chamadas externas, cache do resultado da autenticação, retry e procedimento de compensação para pagamentos.
O que fazer (Externo)
Pedir aos provedores de autenticação, pagamento e plataforma que confirmem a falha e restabeleçam o serviço, avisar os jogadores de que a falha está em um serviço externo.
No gráfico
Degrau a partir de um momento · Tempo de resposta e taxa de erros das chamadas externas, logins bem-sucedidos
Onde olhar
Tempo de resposta, taxa de erros e número de timeouts de cada chamada externa (login da plataforma, pagamento, verificação de identidade) e a página de status do provedor
Confirma se
A partir do horário em que as falhas de login e pagamento se concentram, só os erros e timeouts de uma chamada externa sobem um degrau e ficam lá, e a página de status do provedor mostra falha no mesmo horário
Descarta se
Chamadas externas normais, mas login bloqueado: aponta para o próprio servidor de login (esgotamento do pool de threads, BD) ou para a fila de conexões do sistema operacional (backlog)
Como verificar
Exige logs e métricas do servidor ou do cliente do jogo
Casos reais
Fastly 2021: Erro global na CDN da Fastly
AWS 2021: Congestionamento na rede interna da AWS us-east-1
AWS 2025: Falha de DNS do DynamoDB na AWS us-east-1 e a longa recuperação

Fontes

  1. Timeouts, retries, and backoff with jitter AWS
    Amazon Builders' Library. Enquanto espera a resposta, a chamada ocupa recursos como threads e conexões, por isso usar timeout e só fazer retry de APIs com efeitos colaterais quando a idempotência estiver garantida
  2. Circuit Breaker Pattern Microsoft Azure
    Chamadas com alta chance de falhar são recusadas na hora, sem esperar o timeout, para manter o tempo de resposta
  3. REL05-BP01 Implement graceful degradation to transform applicable hard dependencies into soft dependencies AWS
    AWS Well-Architected. Mesmo com um serviço dependente fora do ar, manter as funções essenciais, ainda que com dados um pouco desatualizados (base para o cache do resultado da autenticação)

Veja também

Mesma camada: L13 Arquitetura e operação de servidores

Mesmo sintoma (Não conecta / loading infinito) em outras camadas

Ver o card interativo, com figuras e simulações