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
Exponential |
Inicializa uma nova instância da ExponentialBackOffWithJitter classe. |
Propriedades
immediate |
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). |
normal |
Repita os parâmetros utilizados para calcular o atraso entre cada repetição em situações normais (ou seja, não limitado). |
throttled |
Repita os parâmetros utilizados para calcular o atraso entre cada tentativa em situações limitadas. |
Métodos
next |
Calcula o intervalo a aguardar antes de tentar novamente em cada tentativa de repetição nova. |
should |
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.