Share via


ExponentialRetry Classe

Nouvelle tentative exponentielle.

Construit un objet de nouvelle tentative exponentielle. Le initial_backoff est utilisé pour la première tentative. Les nouvelles tentatives suivantes sont retentées après initial_backoff + increment_power^retry_count secondes. Par exemple, par défaut, la première tentative se produit après 15 secondes, la seconde après (15+3^1) = 18 secondes et la troisième après (15+3^2) = 24 secondes.

Héritage
azure.storage.blob._shared.policies_async.AsyncStorageRetryPolicy
ExponentialRetry

Constructeur

ExponentialRetry(initial_backoff=15, increment_base=3, retry_total=3, retry_to_secondary=False, random_jitter_range=3, **kwargs)

Paramètres

Nom Description
initial_backoff
int

Intervalle d’interruption initiale, en secondes, pour la première nouvelle tentative.

valeur par défaut: 15
increment_base
int

Base, en secondes, pour incrémenter le initial_backoff par après la première nouvelle tentative.

valeur par défaut: 3
max_attempts
Obligatoire
int

Nombre maximal de nouvelles tentatives.

retry_to_secondary

Indique si la demande doit être retentée au niveau secondaire, si possible. Cela ne doit être activé que si les comptes RA-GRS sont utilisés et les données potentiellement obsolètes peuvent être gérées.

valeur par défaut: False
random_jitter_range
int

Nombre en secondes qui indique une plage à giguer/aléatoire pour l’intervalle d’interruption. Par exemple, une random_jitter_range de 3 entraîne la variation de l’intervalle d’interruption x entre x+3 et x-3.

valeur par défaut: 3
retry_total
valeur par défaut: 3

Méthodes

configure_retries
get_backoff_time

Calcule la durée de mise en veille avant de réessayer.

increment

Incrémentez les compteurs de nouvelles tentatives.

send
sleep

configure_retries

configure_retries(request)

Paramètres

Nom Description
request
Obligatoire

get_backoff_time

Calcule la durée de mise en veille avant de réessayer.

get_backoff_time(settings)

Paramètres

Nom Description
settings
Obligatoire

Valeurs configurables relatives à l’heure d’interruption.

Retours

Type Description
int,

Entier indiquant la durée d’attente avant de réessayer la demande, ou Aucun pour indiquer qu’aucune nouvelle tentative ne doit être effectuée.

increment

Incrémentez les compteurs de nouvelles tentatives.

increment(settings, request, response=None, error=None)

Paramètres

Nom Description
settings
Obligatoire

Valeurs configurables relatives à l’opération d’incrémentation.

request
Obligatoire
<xref:<xref:"PipelineRequest">>

Objet de requête de pipeline.

"PipelineResponse"
Obligatoire

Objet de réponse de pipeline.

error

Une erreur s’est produite lors de la demande, ou Aucune si la réponse a été reçue avec succès.

valeur par défaut: None
response
valeur par défaut: None

Retours

Type Description

Indique si les tentatives de nouvelle tentative sont épuisées.

send

async send(request)

Paramètres

Nom Description
request
Obligatoire

sleep

async sleep(settings, transport)

Paramètres

Nom Description
settings
Obligatoire
transport
Obligatoire

Attributs

next

Pointeur vers la stratégie ou un transport suivant (encapsulé sous forme de stratégie). Sera défini lors de la création du pipeline.

next: HTTPPolicy[HTTPRequestType, HTTPResponseType]