Google Cloud PHP shared dependency, providing functionality useful to all components. Client - Class ExponentialBackoff (1.59.1)
Stay organized with collections
Save and categorize content based on your preferences.
Reference documentation and code samples for the Google Cloud PHP shared dependency, providing functionality useful to all components. Client class ExponentialBackoff.
Exponential backoff implementation.
Namespace
Google \ Cloud \ CoreMethods
__construct
| Parameters | |
|---|---|
| Name | Description |
retries |
int
[optional] Number of retries for a failed request. |
retryFunction |
callable
[optional] returns bool for whether or not to retry |
retryListener |
callable
[optional] Runs after the $retryFunction. Unlike the $retryFunction,this function isn't responsible to decide if a retry should happen or not, but it gives the users flexibility to consume exception messages and add custom logic. Function definition should match: function (\Exception $e, int $attempt, array $arguments): array Ex: One might want to change headers on every retry, this function can be used to achieve such a functionality. |
execute
Executes the retry process.
| Parameters | |
|---|---|
| Name | Description |
function |
callable
|
arguments |
array
[optional] |
| Returns | |
|---|---|
| Type | Description |
mixed |
|
setDelayFunction
If not set, defaults to using usleep.
| Parameter | |
|---|---|
| Name | Description |
delayFunction |
callable
|
| Returns | |
|---|---|
| Type | Description |
void |
|
setCalcDelayFunction
If not set, defaults to using Google\Cloud\Core\ExponentialBackoff::calculateDelay().
| Parameter | |
|---|---|
| Name | Description |
calcDelayFunction |
callable
|
| Returns | |
|---|---|
| Type | Description |
void |
|
static::calculateDelay
Calculates exponential delay.
| Parameter | |
|---|---|
| Name | Description |
attempt |
int
The attempt number used to calculate the delay. |
| Returns | |
|---|---|
| Type | Description |
int |
|
Constants
MAX_DELAY_MICROSECONDS
Value: 60000000