Compartilhar via


ExponentialBackOffWithJitter class

Implementa uma retirada exponencial com estratégia de repetição de tremulação. A função para calcular o próximo intervalo é a seguinte (x é a xth retry): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)

Construtores

ExponentialBackOffWithJitter(boolean, ErrorFilter)

Inicializa uma nova instância da classe ExponentialBackOffWithJitter.

Propriedades

immediateFirstRetry

Booliano indicando se a primeira repetição deve ser imediata (se definida como true) ou após o atraso normalParameters.c (se definido como false).

normalParameters

Parâmetros de repetição usados para calcular o atraso entre cada repetição em situações normais (ou seja, não limitadas).

throttledParameters

Parâmetros de repetição usados para calcular o atraso entre cada repetição em situações limitadas.

Métodos

nextRetryTimeout(number, boolean)

Calcula o intervalo a aguardar antes de tentar novamente em cada nova tentativa provisória.

shouldRetry(Error)

Com base no erro passado como argumento, determina se um erro é transitório e se a operação deve ser repetida ou não.

Detalhes do construtor

ExponentialBackOffWithJitter(boolean, ErrorFilter)

Inicializa uma nova instância da classe ExponentialBackOffWithJitter.

new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)

Parâmetros

immediateFirstRetry

boolean

booliano indicando se a primeira repetição deve ser imediata (padrão) ou aguardar o primeiro intervalo (valor c).

errorFilter

ErrorFilter

Detalhes da propriedade

immediateFirstRetry

Booliano indicando se a primeira repetição deve ser imediata (se definida como true) ou após o atraso normalParameters.c (se definido como false).

immediateFirstRetry: boolean

Valor da propriedade

boolean

normalParameters

Parâmetros de repetição usados para calcular o atraso entre cada repetição em situações normais (ou seja, não limitadas).

normalParameters: ExponentialBackoffWithJitterParameters

Valor da propriedade

ExponentialBackoffWithJitterParameters

throttledParameters

Parâmetros de repetição usados para calcular o atraso entre cada repetição em situações limitadas.

throttledParameters: ExponentialBackoffWithJitterParameters

Valor da propriedade

ExponentialBackoffWithJitterParameters

Detalhes do método

nextRetryTimeout(number, boolean)

Calcula o intervalo a aguardar antes de tentar novamente em cada nova tentativa provisória.

function nextRetryTimeout(retryCount: number, isThrottled: boolean): number

Parâmetros

retryCount

number

Tentativa de repetição atual provisória.

isThrottled

boolean

Booliano que indica se o hub IoT do Azure está limitando as operações.

Retornos

number

O tempo de espera antes de tentar uma nova tentativa em milissegundos.

shouldRetry(Error)

Com base no erro passado como argumento, determina se um erro é transitório e se a operação deve ser repetida ou não.

function shouldRetry(error: Error): boolean

Parâmetros

error

Error

O erro encontrado pela operação.

Retornos

boolean

Se a operação deve ser repetida ou não.