ExponentialBackoff
data class ExponentialBackoff(val base: Double = 2.0, val baseDelayMs: Long, val maxDelayMs: Long, val randomizationMs: Long) : BackoffStrategy
Applies exponential backoff between retry attempts.
The delay for attempt n is calculated as: min(baseDelayMs * base^n + random(0..randomizationMs), maxDelayMs)
Parameters
base
The exponential base multiplier. Defaults to 2.0.
baseDelayMs
The initial delay in milliseconds before the first retry. Defaults to 1000.
maxDelayMs
The maximum delay in milliseconds, capping exponential growth. Defaults to 60000.
randomizationMs
Random jitter added to each delay to avoid thundering herd. Defaults to 1000.