viveksblog

By viveksblog

Reliable API design with defensive timeouts

Use bounded retries, jitter, and observability before shipping reliability improvements.

const timeoutMs = Math.min(200 + attempt * 180, 1200);
const jitter = Math.random() * 100;
await fetch(endpoint, { signal: AbortSignal.timeout(timeoutMs + jitter) });