ExponentialBackOffWithJitter class
Implementuje wykładniczą strategię wycofywania z użyciem strategii ponawiania prób. Funkcja obliczania następnego interwału jest następująca (x to x to x ponawianie próby): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
Konstruktory
Exponential |
Inicjuje nowe wystąpienie klasy ExponentialBackOffWithJitter. |
Właściwości
immediate |
Wartość logiczna wskazująca, czy pierwsza ponowna próba powinna być natychmiastowa (jeśli ustawiono wartość true) lub po opóźnieniu normalParameters.c (jeśli jest ustawiona wartość false). |
normal |
Parametry ponawiania prób używane do obliczania opóźnienia między poszczególnymi ponownymi próbami w normalnych sytuacjach (tj. nie ograniczane). |
throttled |
Parametry ponawiania prób używane do obliczania opóźnienia między poszczególnymi ponownymi próbami w sytuacjach ograniczonych. |
Metody
next |
Oblicza interwał oczekiwania przed ponowieniu próby przy każdej nowej próbie wstępnie. |
should |
Na podstawie błędu przekazanego jako argument określa, czy błąd jest przejściowy, a jeśli operacja powinna zostać ponowiona, czy nie. |
Szczegóły konstruktora
ExponentialBackOffWithJitter(boolean, ErrorFilter)
Inicjuje nowe wystąpienie klasy ExponentialBackOffWithJitter.
new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)
Parametry
- immediateFirstRetry
-
boolean
wartość logiczna wskazująca, czy pierwsza ponowna próba powinna być natychmiastowa (wartość domyślna) lub poczekać pierwszy interwał (wartość c).
- errorFilter
-
ErrorFilter
Szczegóły właściwości
immediateFirstRetry
Wartość logiczna wskazująca, czy pierwsza ponowna próba powinna być natychmiastowa (jeśli ustawiono wartość true) lub po opóźnieniu normalParameters.c (jeśli jest ustawiona wartość false).
immediateFirstRetry: boolean
Wartość właściwości
boolean
normalParameters
Parametry ponawiania prób używane do obliczania opóźnienia między poszczególnymi ponownymi próbami w normalnych sytuacjach (tj. nie ograniczane).
normalParameters: ExponentialBackoffWithJitterParameters
Wartość właściwości
ExponentialBackoffWithJitterParameters
throttledParameters
Parametry ponawiania prób używane do obliczania opóźnienia między poszczególnymi ponownymi próbami w sytuacjach ograniczonych.
throttledParameters: ExponentialBackoffWithJitterParameters
Wartość właściwości
ExponentialBackoffWithJitterParameters
Szczegóły metody
nextRetryTimeout(number, boolean)
Oblicza interwał oczekiwania przed ponowieniu próby przy każdej nowej próbie wstępnie.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parametry
- retryCount
-
number
Bieżące ponawianie próby wstępne.
- isThrottled
-
boolean
Wartość logiczna wskazująca, czy usługa Azure IoT Hub ogranicza operacje.
Zwraca
number
Czas oczekiwania przed próbą ponawiania próby w milisekundach.
shouldRetry(Error)
Na podstawie błędu przekazanego jako argument określa, czy błąd jest przejściowy, a jeśli operacja powinna zostać ponowiona, czy nie.
function shouldRetry(error: Error): boolean
Parametry
- error
-
Error
Błąd napotkany przez operację.
Zwraca
boolean
Niezależnie od tego, czy operacja powinna zostać ponowiona, czy nie.