Coffrify.Runtime.Retry.DecorrelatedJitter (Coffrify v0.9.0)

View Source

AWS-style decorrelated jitter — smoother than vanilla exponential. Holds the last computed delay in process state via the closure.

This module is itself a struct: each next/3 call returns a fresh struct with the updated last_delay_ms, mirroring the pure-functional approach of the other policies.

Summary

Functions

Build a policy.

Types

t()

@type t() :: %Coffrify.Runtime.Retry.DecorrelatedJitter{
  base_delay_ms: pos_integer(),
  last_delay_ms: non_neg_integer(),
  max_attempts: non_neg_integer(),
  max_delay_ms: pos_integer()
}

Functions

new(opts \\ [])

@spec new(keyword()) :: t()

Build a policy.