ExponentialBackOffWithJitter class
Implementerar en exponentiell backoff med jitter-strategi för återförsök. Funktionen för att beräkna nästa intervall är följande (x är det x:e återförsöket): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
Konstruktorer
Exponential |
Initierar en ny instans av ExponentialBackOffWithJitter klassen. |
Egenskaper
immediate |
Booleskt värde som anger om det första återförsöket ska vara omedelbart (om det är inställt på sant) eller efter fördröjningen normalParameters.c (om det är inställt på falskt). |
normal |
Återförsöksparametrar som används för att beräkna fördröjningen mellan varje återförsök i normala situationer (dvs. inte begränsad). |
throttled |
Återförsöksparametrar som används för att beräkna fördröjningen mellan varje återförsök i begränsade situationer. |
Metoder
next |
Beräknar det intervall som ska vänta innan du försöker igen vid varje nytt preliminärt nytt försök. |
should |
Baserat på det fel som skickas som argument avgör om ett fel är tillfälligt och om åtgärden ska försökas igen eller inte. |
Konstruktorinformation
ExponentialBackOffWithJitter(boolean, ErrorFilter)
Initierar en ny instans av ExponentialBackOffWithJitter klassen.
new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)
Parametrar
- immediateFirstRetry
-
boolean
booleskt värde som anger om det första återförsöket ska vara omedelbart (standard) eller vänta det första intervallet (c-värde).
- errorFilter
-
ErrorFilter
Egenskapsinformation
immediateFirstRetry
Booleskt värde som anger om det första återförsöket ska vara omedelbart (om det är inställt på sant) eller efter fördröjningen normalParameters.c (om det är inställt på falskt).
immediateFirstRetry: boolean
Egenskapsvärde
boolean
normalParameters
Återförsöksparametrar som används för att beräkna fördröjningen mellan varje återförsök i normala situationer (dvs. inte begränsad).
normalParameters: ExponentialBackoffWithJitterParameters
Egenskapsvärde
ExponentialBackoffWithJitterParameters
throttledParameters
Återförsöksparametrar som används för att beräkna fördröjningen mellan varje återförsök i begränsade situationer.
throttledParameters: ExponentialBackoffWithJitterParameters
Egenskapsvärde
ExponentialBackoffWithJitterParameters
Metodinformation
nextRetryTimeout(number, boolean)
Beräknar det intervall som ska vänta innan du försöker igen vid varje nytt preliminärt nytt försök.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parametrar
- retryCount
-
number
Aktuellt preliminärt nytt försök.
- isThrottled
-
boolean
Booleskt värde som anger om Azure IoT-hubben är begränsningsåtgärder.
Returer
number
Väntetiden innan du försöker göra ett nytt försök i millisekunder.
shouldRetry(Error)
Baserat på det fel som skickas som argument avgör om ett fel är tillfälligt och om åtgärden ska försökas igen eller inte.
function shouldRetry(error: Error): boolean
Parametrar
- error
-
Error
Felet som påträffades av åtgärden.
Returer
boolean
Om åtgärden ska göras om eller inte.