ExponentialBackOffWithJitter class
Implementuje exponenciální zpochybnění 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 za zpožděním normalParameters.c (pokud je nastavena 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. nejsou 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, který se má čekat před opakováním při každém novém nezávazně pokusu. |
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 počkat první interval (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 za zpožděním normalParameters.c (pokud je nastavena 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. nejsou 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, který se má čekat před opakováním při každém novém nezávazně pokusu.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parametry
- retryCount
-
number
Aktuální pokus o opakování nezávazně.
- isThrottled
-
boolean
Logická hodnota označující, jestli je azure IoT Hub omezováním operací.
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 zjištěná operací.
Návraty
boolean
Jestli se má operace opakovat, nebo ne.