ExponentialBackOffWithJitter class
Implementuje exponenciální backoff se strategií opakování Jitter. Funkce pro výpočet dalšího intervalu je následující (x je x. opakování): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
Konstruktory
Exponential |
Inicializuje novou instanci ExponentialBackOffWithJitter třídy. |
Vlastnosti
immediate |
Logická hodnota označující, jestli má být první opakování okamžité (pokud je nastaveno na hodnotu true), nebo po zpoždění normalParameters.c (pokud je nastaveno na hodnotu false). |
normal |
Parametry opakování použité k výpočtu zpoždění mezi jednotlivými opakováními v normálních situacích (tj. bez omezení). |
throttled |
Parametry opakování použité k výpočtu zpoždění mezi jednotlivými opakováními v omezených situacích. |
Metody
next |
Vypočítá interval čekání před opakovaným pokusem při každém novém pokusu o opakování nezávazně. |
should |
Na základě chyby předané jako argument určuje, jestli je chyba přechodná a jestli se má operace opakovat nebo ne. |
Podrobnosti konstruktoru
ExponentialBackOffWithJitter(boolean, ErrorFilter)
Inicializuje novou instanci ExponentialBackOffWithJitter třídy.
new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)
Parametry
- immediateFirstRetry
-
boolean
logická hodnota označující, jestli má být první opakování okamžité (výchozí) nebo čekání prvního intervalu (hodnota c).
- errorFilter
-
ErrorFilter
Podrobnosti vlastnosti
immediateFirstRetry
Logická hodnota označující, jestli má být první opakování okamžité (pokud je nastaveno na hodnotu true), nebo po zpoždění normalParameters.c (pokud je nastaveno na hodnotu false).
immediateFirstRetry: boolean
Hodnota vlastnosti
boolean
normalParameters
Parametry opakování použité k výpočtu zpoždění mezi jednotlivými opakováními v normálních situacích (tj. bez omezení).
normalParameters: ExponentialBackoffWithJitterParameters
Hodnota vlastnosti
ExponentialBackoffWithJitterParameters
throttledParameters
Parametry opakování použité k výpočtu zpoždění mezi jednotlivými opakováními v omezených situacích.
throttledParameters: ExponentialBackoffWithJitterParameters
Hodnota vlastnosti
ExponentialBackoffWithJitterParameters
Podrobnosti metody
nextRetryTimeout(number, boolean)
Vypočítá interval čekání před opakovaným pokusem při každém novém pokusu o opakování nezávazně.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parametry
- retryCount
-
number
Nezávazné opakování aktuálního pokusu
- isThrottled
-
boolean
Logická hodnota označující, jestli služba Azure IoT Hub provádí operace omezování.
Návraty
number
Doba čekání před pokusem o opakování v milisekundách
shouldRetry(Error)
Na základě chyby předané jako argument určuje, jestli je chyba přechodná a jestli se má operace opakovat nebo ne.
function shouldRetry(error: Error): boolean
Parametry
- error
-
Error
Chyba, ke které došlo při operaci.
Návraty
boolean
Zda se má operace opakovat, nebo ne.