Partilhar via


ExponentialBackOffWithJitter class

Implementa um Backoff Exponencial com a estratégia de repetição do Jitter. A função a calcular o intervalo seguinte é 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 ExponentialBackOffWithJitter classe.

Propriedades

immediateFirstRetry

Valor booleano que indica se a primeira repetição deve ser imediata (se definida como verdadeira) ou após o atraso normalParameters.c (se definido como falso).

normalParameters

Repita os parâmetros utilizados para calcular o atraso entre cada repetição em situações normais (ou seja, não limitado).

throttledParameters

Repita os parâmetros utilizados para calcular o atraso entre cada tentativa em situações limitadas.

Métodos

nextRetryTimeout(number, boolean)

Calcula o intervalo a aguardar antes de tentar novamente em cada tentativa de repetição nova.

shouldRetry(Error)

Com base no erro transmitido 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 ExponentialBackOffWithJitter classe.

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

Parâmetros

immediateFirstRetry

boolean

booleano que indica se a primeira repetição deve ser imediata (predefinição) ou aguardar o primeiro intervalo (valor c).

errorFilter

ErrorFilter

Detalhes de Propriedade

immediateFirstRetry

Valor booleano que indica se a primeira repetição deve ser imediata (se definida como verdadeira) ou após o atraso normalParameters.c (se definido como falso).

immediateFirstRetry: boolean

Valor de Propriedade

boolean

normalParameters

Repita os parâmetros utilizados para calcular o atraso entre cada repetição em situações normais (ou seja, não limitado).

normalParameters: ExponentialBackoffWithJitterParameters

Valor de Propriedade

ExponentialBackoffWithJitterParameters

throttledParameters

Repita os parâmetros utilizados para calcular o atraso entre cada tentativa em situações limitadas.

throttledParameters: ExponentialBackoffWithJitterParameters

Valor de Propriedade

ExponentialBackoffWithJitterParameters

Detalhes de Método

nextRetryTimeout(number, boolean)

Calcula o intervalo a aguardar antes de tentar novamente em cada tentativa de repetição nova.

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

Parâmetros

retryCount

number

Tentativa de repetição atual.

isThrottled

boolean

Valor booleano que indica se o hub IoT do Azure está a limitar as operações.

Devoluções

number

O tempo para aguardar antes de tentar uma nova tentativa em milissegundos.

shouldRetry(Error)

Com base no erro transmitido 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.

Devoluções

boolean

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