Class FullJitterBackoffStrategy
java.lang.Object
software.amazon.awssdk.core.retry.backoff.FullJitterBackoffStrategy
- All Implemented Interfaces:
BackoffStrategy
,ToCopyableBuilder<FullJitterBackoffStrategy.Builder,
FullJitterBackoffStrategy>
public final class FullJitterBackoffStrategy
extends Object
implements BackoffStrategy, ToCopyableBuilder<FullJitterBackoffStrategy.Builder,FullJitterBackoffStrategy>
Backoff strategy that uses a full jitter strategy for computing the next backoff delay. A full jitter
strategy will always compute a new random delay between 0 and the computed exponential backoff for each
subsequent request.
For example, using a base delay of 100, a max backoff time of 10000 an exponential delay of 400 is computed
for a second retry attempt. The final computed delay before the next retry will then be in the range of 0 to 400.
This is in contrast to
EqualJitterBackoffStrategy
that computes a new random delay where the final
computed delay before the next retry will be at least half of the computed exponential delay.-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from interface software.amazon.awssdk.core.retry.backoff.BackoffStrategy
RETRIES_ATTEMPTED_CEILING
-
Method Summary
Methods inherited from interface software.amazon.awssdk.core.retry.backoff.BackoffStrategy
calculateExponentialDelay
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
computeDelayBeforeNextRetry
Description copied from interface:BackoffStrategy
Compute the delay before the next retry request. This strategy is only consulted when there will be a next retry.- Specified by:
computeDelayBeforeNextRetry
in interfaceBackoffStrategy
- Parameters:
context
- Context about the state of the last request and information about the number of requests made.- Returns:
- Amount of time in milliseconds to wait before the next attempt. Must be non-negative (can be zero).
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<FullJitterBackoffStrategy.Builder,
FullJitterBackoffStrategy> - Returns:
- a builder for type T
-
builder
-
equals
-
hashCode
public int hashCode() -
toString
-