Dela via


ExponentialBackOffWithJitter class

Implementerar en exponentiell backoff med jitter-återförsöksstrategi. 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

ExponentialBackOffWithJitter(boolean, ErrorFilter)

Initierar en ny instans av klassen ExponentialBackOffWithJitter.

Egenskaper

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 normalParameters.c-fördröjningen (om det är inställt på false).

normalParameters

Försök med parametrar som används för att beräkna fördröjningen mellan varje nytt försök i normala situationer (dvs. inte begränsad).

throttledParameters

Försök med parametrar som används för att beräkna fördröjningen mellan varje nytt försök i begränsade situationer.

Metoder

nextRetryTimeout(number, boolean)

Beräknar intervallet som ska vänta innan nytt försök vid varje nytt nytt försök preliminärt.

shouldRetry(Error)

Baserat på det fel som skickas som argument avgör om ett fel är tillfälligt och om åtgärden ska utföras igen eller inte.

Konstruktorinformation

ExponentialBackOffWithJitter(boolean, ErrorFilter)

Initierar en ny instans av klassen ExponentialBackOffWithJitter.

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 normalParameters.c-fördröjningen (om det är inställt på false).

immediateFirstRetry: boolean

Egenskapsvärde

boolean

normalParameters

Försök med parametrar som används för att beräkna fördröjningen mellan varje nytt försök i normala situationer (dvs. inte begränsad).

normalParameters: ExponentialBackoffWithJitterParameters

Egenskapsvärde

ExponentialBackoffWithJitterParameters

throttledParameters

Försök med parametrar som används för att beräkna fördröjningen mellan varje nytt försök i begränsade situationer.

throttledParameters: ExponentialBackoffWithJitterParameters

Egenskapsvärde

ExponentialBackoffWithJitterParameters

Metodinformation

nextRetryTimeout(number, boolean)

Beräknar intervallet som ska vänta innan nytt försök vid varje nytt nytt försök preliminärt.

function nextRetryTimeout(retryCount: number, isThrottled: boolean): number

Parametrar

retryCount

number

Aktuellt nytt försök preliminärt.

isThrottled

boolean

Booleskt värde som anger om Azure IoT-hubben är begränsningsåtgärder.

Returer

number

Tiden att vänta 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 utföras 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.