Backend · Resiliência

Retry com Backoff

Repete chamadas com backoff exponencial e full jitter só quando vale a pena (429, 5xx, rede), respeitando Retry-After e AbortSignal. Integração com gateway e ERP que não cai por instabilidade.

Retry · Backoff · Jitter · 10 testes automatizados · Licença MIT · Criado por FlowCore Soluções LTDA

Como instalar

  1. Funciona onde você já roda Node 18+, Cloudflare Workers, Deno, Bun, Vercel e Netlify Functions. Zero dependência: só fetch e Web Crypto, que já vêm no runtime.
  2. Crie src/lib/retry.ts Cole o código da aba Código.
  3. Use
    const resp = await fetchComRetry("https://api.parceiro.com/pedidos", {
      method: "POST", headers, body,
    }, { tentativas: 4, baseMs: 300 });
    const dados = await comRetry(() => erp.buscarEstoque(sku), { tentativas: 3 });
  4. Rode o teste junto O arquivo de teste (aba Teste) cobre 10 cenários. Copie para src/lib/ ao lado e rode:
    npm install -D vitest
    npx vitest run src/lib

Código no GitHub · Biblioteca de códigos

Mais em Resiliência