Files
modules/routing-advanced/hyper-p2p-retry-policy
2026-05-20 23:36:32 -04:00
..
2026-05-20 23:36:32 -04:00
2026-05-20 22:56:32 -04:00
2026-05-20 22:56:32 -04:00
2026-05-20 21:19:52 -04:00
2026-05-20 22:56:32 -04:00
2026-05-20 21:57:50 -04:00
2026-05-20 21:57:50 -04:00
2026-05-20 22:56:32 -04:00

hyper-p2p-retry-policy

Exponential backoff retry helper (distinct from circuit breaking).

Protocol: retry-policy/v1

When to use

  • Client-side or gateway retry loops with capped backoff.
  • Per-route retry budgets and non-retryable error codes.

When not to use

  • Cutting traffic after sustained failures (use circuit-breaker).
  • Peer selection (use load-spread or geo-hint-router).

Quick start

const { HyperP2PRetryPolicy } = require('hyper-p2p-retry-policy')
const rp = new HyperP2PRetryPolicy({ maxAttempts: 5 })
rp.registerRoute('upload')
if (rp.shouldRetry(err, attempt, 'upload')) {
  await sleep(rp.nextDelay(attempt, 'upload'))
}

Docs

Test

npm install && npm test