request hedging
Resilience Patterns

Meaning

Request hedging is a latency‑optimization technique where the same request is sent to multiple replicas of a service, and the first response is used while the others are cancelled. It reduces tail latency by exploiting variability in service response times. Use it when services are idempotent and can tolerate the extra load.

Primary Function

Latency optimization

Communicative Purpose

Reduce tail latency by issuing redundant requests

Pattern

send request to multiple replicas → use first response → cancel others

Core Structure

latency = min(response_times)

Função primária

Latency optimization

Propósito comunicativo

Reduce tail latency by issuing redundant requests

Situações de gatilho

High‑variance latency services, tight SLOs, idle replica capacity

Contextos

Distributed microservices, cloud‑native systems, load‑balanced backends

Padrão

send request to multiple replicas → use first response → cancel others

Estrutura central

latency = min(response_times)

Colocados típicos

  • load balancing
  • retry policies
  • circuit breaker
  • tail‑latency budgeting

Substituições comuns

  • request replication
  • backup requests
  • speculative execution

Erros comuns

over‑hedging causing excess load, forgetting to cancel redundant requests, applying to non‑idempotent endpoints

Similar / contraste

request retry – re‑sending after a failure; hedging – sending duplicates proactively before any failure

Interferências

Coming from synchronous RPC backgrounds: may assume duplicate requests cause errors; ensure idempotency and proper cancellation.

Família do chunk

  • request replication
  • speculative execution
  • tail‑latency optimization

Nuance

Only effective when the service can handle the extra load and is idempotent; otherwise hedging can increase load and worsen latency.

Efeito pragmático

Cuts down the 99th‑percentile response time and improves user‑perceived performance.

Dica de memória

Think of placing a hedge bet: you make several wagers to capture the fastest win.

Nota

Hedging improves tail latency but adds extra load; it should only be used when the service is idempotent and can absorb the additional traffic.

Upgrade path

Adaptive hedging that dynamically adjusts the number of replicas based on observed latency

Frequência: MediumFormulaicidade: FlexibleTipo de construção: conceptPrioridade de aquisição: Recognition firstPrioridade de output: BothTag de espaçamento: Medium-term

Log in to save chunks.