Shreyas arya

Generation

generate functionWed, 08 Feb 2023

When requests to Step Function fail, Workflow Service performs exponential backoff retries to notify Step Function service.

public class ExponentialBackoff { private static final long DEFAULT_MIN_DELAY = 1000; private static final long DEFAULT_MAX_DELAY = 300000; private static final double DEFAULT_DELAY_MULTIPLIER = 2; private static final long DEFAULT_MAX_ATTEMPTS = 3; private static final Random RANDOM = new Random(); private long minDelay = DEFAULT_MIN_DELAY; private long maxDelay = DEFAULT_MAX_DELAY; private double delayMultiplier = DEFAULT_DELAY_MULTIPLIER; private long maxAttempts = DEFAULT_MAX_ATTEMPTS; private long lastDelay; public long nextDelay(final long attemptNumber) { if (attemptNumber == 0) { lastDelay = minDelay; } else { lastDelay = Math.min( Math.round(lastDelay * delayMultiplier + RANDOM.nextDouble() * lastDelay),

Questions about programming?Chat with your personal AI assistant