Glossary
Plain-English definitions of the error-handling and reliability terms you'll encounter while debugging.
- Idempotency key
- A unique value that ensures repeating a request has the same effect as making it once. Critical for safely retrying payment, write, and webhook delivery operations.
- Exponential backoff
- A retry strategy where the wait between attempts doubles each time (e.g., 1s, 2s, 4s, 8s). Pair with jitter to avoid thundering herds.
- Jitter
- Random variation added to retry delays so that many clients failing at once don't retry at the exact same moment. "Full jitter" picks a random value between 0 and the backoff.
- Circuit breaker
- A pattern that stops calling a failing dependency after a threshold of errors, fails fast for a cooldown, then probes for recovery. Prevents cascading failures.
- Rate limit
- A cap on how many requests a client can make in a window. Servers return HTTP 429 when exceeded, with X-RateLimit-* and Retry-After headers.
- Token bucket
- Rate-limiting algorithm where requests consume tokens from a bucket that refills at a steady rate. Allows short bursts up to bucket capacity.
- Leaky bucket
- Rate-limiting algorithm where requests pass through a bucket at a fixed leak rate. Smooths bursts to a steady rate.
- Webhook signature
- An HMAC of the webhook body using a shared secret, sent in a header. Verify before trusting the payload — otherwise anyone can forge events.
- Optimistic concurrency
- Update strategy that checks a version (ETag, version number) before writing. Rejects conflicting updates with 409 or 412 instead of locking.
- Stack trace
- The list of function calls that led to an error. Read top-to-bottom from the error site, scanning for the topmost line in your own code.
- Hydration
- Process where a JavaScript framework attaches event handlers to server-rendered HTML. Mismatch between server and client output causes hydration errors.
- Cold start
- Latency added when a serverless function spins up a new container after being idle. Usually 100ms-2s; worse with large dependencies.
- Connection pool
- A reusable set of database connections. Prevents the cost of opening a new connection per request, but bounded — running out triggers timeouts or 503s.
- Deadlock
- Two or more transactions waiting for locks held by each other. Most databases auto-detect and abort one transaction; the loser must retry.
- Retryable error
- A transient failure (network glitch, lock contention, capacity blip) that may succeed on a retry. Distinguish from fatal errors (validation, permission) which should not be retried.
- Cascade failure
- When one service's failure overwhelms its callers, propagating the outage. Circuit breakers, timeouts, and bulkheads contain it.
- IAM policy
- Identity and Access Management ruleset granting (or denying) actions on resources. AWS, GCP, and Azure each have their own policy languages.
- JWT
- JSON Web Token — a signed credential carrying claims. Verify the signature, expiration, audience, and issuer before trusting it.
- CORS preflight
- OPTIONS request a browser sends before a cross-origin request to check whether the server allows it. Failures are silent in app code but visible in DevTools.
- Backpressure
- A mechanism for a slow consumer to signal "slow down" to a fast producer. Without it, queues grow unbounded and memory eventually blows.
- SLO / SLI / SLA
- SLI = service level indicator (a metric, e.g. p99 latency). SLO = the target value of an SLI. SLA = a contractual SLO with consequences attached.
- Time-to-First-Byte (TTFB)
- Time between request sent and first response byte received. Dominated by server processing time, queueing, and network distance.
- Eventual consistency
- Read after write may not see the write immediately, but converges over time. Common in distributed systems; surprises developers used to relational ACID.
- Quota
- A hard cap on resource usage (requests/day, GB stored, function invocations/month). Crossing it returns errors and may incur overage charges.