Module slack_sdk.http_retry.builtin_interval_calculators
Classes
class BackoffRetryIntervalCalculator (backoff_factor: float = 0.5, jitter: Optional[Jitter] = None)
-
Retry interval calculator that calculates in the manner of Exponential Backoff And Jitter see also: https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/
Retry interval calculator that calculates in the manner of Exponential Backoff And Jitter
Args
backoff_factor
- The factor for the backoff interval calculation
jitter
- The jitter logic implementation
Expand source code
class BackoffRetryIntervalCalculator(RetryIntervalCalculator): """Retry interval calculator that calculates in the manner of Exponential Backoff And Jitter see also: https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/ """ backoff_factor: float jitter: Jitter def __init__(self, backoff_factor: float = 0.5, jitter: Optional[Jitter] = None): """Retry interval calculator that calculates in the manner of Exponential Backoff And Jitter Args: backoff_factor: The factor for the backoff interval calculation jitter: The jitter logic implementation """ self.backoff_factor = backoff_factor self.jitter = jitter if jitter is not None else RandomJitter() def calculate_sleep_duration(self, current_attempt: int) -> float: interval = self.backoff_factor * (2 ** (current_attempt)) sleep_duration = self.jitter.recalculate(interval) return sleep_duration
Ancestors
Class variables
var backoff_factor : float
var jitter : Jitter
Inherited members
class FixedValueRetryIntervalCalculator (fixed_internal: float = 0.5)
-
Retry interval calculator that uses a fixed value.
Retry interval calculator that uses a fixed value.
Args
fixed_internal
- The fixed interval seconds
Expand source code
class FixedValueRetryIntervalCalculator(RetryIntervalCalculator): """Retry interval calculator that uses a fixed value.""" fixed_interval: float def __init__(self, fixed_internal: float = 0.5): """Retry interval calculator that uses a fixed value. Args: fixed_internal: The fixed interval seconds """ self.fixed_interval = fixed_internal def calculate_sleep_duration(self, current_attempt: int) -> float: return self.fixed_interval
Ancestors
Class variables
var fixed_interval : float
Inherited members