Compartilhar via


ExponentialRetry Classe

Repetição exponencial.

Constrói um objeto de repetição exponencial. O initial_backoff é usado para a primeira repetição. As tentativas subsequentes são repetidas após initial_backoff + increment_power^retry_count segundos. Por exemplo, por padrão, a primeira repetição ocorre após 15 segundos, a segunda após (15+3^1) = 18 segundos e a terceira após (15+3^2) = 24 segundos.

Herança
azure.storage.blob._shared.policies_async.AsyncStorageRetryPolicy
ExponentialRetry

Construtor

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

Parâmetros

Nome Description
initial_backoff
int

O intervalo de retirada inicial, em segundos, para a primeira repetição.

valor padrão: 15
increment_base
int

A base, em segundos, para incrementar o initial_backoff após a primeira repetição.

valor padrão: 3
max_attempts
Obrigatório
int

O número máximo de tentativas de repetição.

retry_to_secondary

Se a solicitação deve ser repetida para a secundária, se possível. Isso só deve ser habilitado de contas RA-GRS usadas e dados potencialmente obsoletos podem ser tratados.

valor padrão: False
random_jitter_range
int

Um número em segundos que indica um intervalo para tremulação/randomização para o intervalo de retirada. Por exemplo, um random_jitter_range de 3 resulta no intervalo de retirada x para variar entre x+3 e x-3.

valor padrão: 3
retry_total
valor padrão: 3

Métodos

configure_retries
get_backoff_time

Calcula quanto tempo dormir antes de tentar novamente.

increment

Incremente os contadores de repetição.

send
sleep

configure_retries

configure_retries(request)

Parâmetros

Nome Description
request
Obrigatório

get_backoff_time

Calcula quanto tempo dormir antes de tentar novamente.

get_backoff_time(settings)

Parâmetros

Nome Description
settings
Obrigatório

Os valores configuráveis referentes ao tempo de retirada.

Retornos

Tipo Description
int,

Um inteiro que indica quanto tempo aguardar antes de repetir a solicitação ou Nenhum para indicar que nenhuma repetição deve ser executada.

increment

Incremente os contadores de repetição.

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

Parâmetros

Nome Description
settings
Obrigatório

Os valores configuráveis relativos à operação de incremento.

request
Obrigatório
<xref:<xref:"PipelineRequest">>

Um objeto de solicitação de pipeline.

"PipelineResponse"
Obrigatório

Um objeto de resposta de pipeline.

error

Um erro encontrado durante a solicitação ou Nenhum se a resposta foi recebida com êxito.

valor padrão: None
response
valor padrão: None

Retornos

Tipo Description

Se as tentativas de repetição estão esgotadas.

send

async send(request)

Parâmetros

Nome Description
request
Obrigatório

sleep

async sleep(settings, transport)

Parâmetros

Nome Description
settings
Obrigatório
transport
Obrigatório

Atributos

next

Ponteiro para a próxima política ou um transporte (encapsulado como uma política). Será definido na criação do pipeline.

next: HTTPPolicy[HTTPRequestType, HTTPResponseType]