Interface RetryPolicy
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
A policy for retry execution.
-
Method Summary
Modifier and TypeMethodDescriptionstatic RetryPolicyconstantDelay(long delay) Create a constant delay retry policy.longCompute a delay in milliseconds before retry is executed.static RetryPolicyexponentialDelayWithJitter(long initialDelay, long maxDelay) Create an exponential delay with jitter retry policy.static RetryPolicylinearDelay(long initialDelay, long maxDelay) Create a linear delay retry policy.
-
Method Details
-
constantDelay
Create a constant delay retry policy.- Parameters:
delay- the constant delay in milliseconds
-
linearDelay
Create a linear delay retry policy.- Parameters:
initialDelay- the initial delay in millisecondsmaxDelay- maximum delay in milliseconds
-
exponentialDelayWithJitter
Create an exponential delay with jitter retry policy.Based on the Full Jitter approach described in Exponential Backoff And Jitter.
- Parameters:
initialDelay- the initial delay in millisecondsmaxDelay- maximum delay in milliseconds
-
delay
Compute a delay in milliseconds before retry is executed.- Parameters:
failure- the failure of the previous execution attemptretryCount- the number of times operation has been retried already- Returns:
- a delay in milliseconds before retry is executed
-