Voltar aos resultados

Retry e backoff

Retry / Exponential Backoff / Timeout

Confiabilidade
Intermediário
Categoria: Agentes, skills e orquestraçãoSubcategoria: Confiabilidade

O que significa

São três mecanismos básicos de confiabilidade. Retry é tentar de novo após uma falha temporária, como uma API indisponível ou um limite de requisições atingido. Backoff exponencial é aumentar o intervalo entre as tentativas (1 s, 2 s, 4 s...) para não sobrecarregar o serviço que falhou. Timeout é o tempo máximo de espera por uma resposta antes de desistir. Os três precisam de limites. Tentativas infinitas sobre um modelo que responde mal só multiplicam o custo sem resolver o problema. São padrões antigos de sistemas distribuídos que se aplicam integralmente a chamadas de modelos de IA.

Como usar na prática de produto

Em Produto, para chamadas de modelo, vale definir quantas tentativas, com que intervalo, e o que conta como falha. Um erro de API é falha e merece retry; uma resposta de baixa qualidade não é falha técnica e deve ir para o fallback, não para nova tentativa. Timeout é um requisito de produto, não apenas técnico: “resposta em até 5 segundos ou caminho degradado” é uma decisão de experiência. Por exemplo: 3 tentativas com backoff para erros de limite de taxa; depois disso, fallback para o modelo secundário; timeout de 8 segundos por chamada.

Quando usar este termo ou outro

Use retry para falhas transitórias de infraestrutura, como indisponibilidade momentânea ou limite de requisições. Use fallback para falhas de qualidade, em que o modelo respondeu, mas mal. Use circuit breaker quando as falhas persistem e continuar tentando só piora. Uma forma simples de diferenciar: retry insiste um pouco; fallback muda de caminho; circuit breaker para de tentar por um tempo.

Exemplos de aplicação

  • API de modelo: 3 tentativas com intervalo crescente para erros de limite de taxa.
  • Timeout: definir o tempo máximo de espera por resposta em cada etapa.
  • Distinção: tratar resposta ruim como caso de fallback, não de retry.
  • Ferramentas: aplicar retry a consultas externas que falham esporadicamente.
  • Custo: limitar tentativas para evitar multiplicar chamadas em cascata.

Origem do termo

Padrões clássicos de sistemas distribuídos (backoff exponencial vem do protocolo Ethernet, 1973).

Fonte técnica

AWS Architecture Blog, Exponential Backoff and Jitter; Google SRE Book, Handling Overload

Termos relacionados