ExponentialBackOffWithJitter class
Implementeert een exponentiële uitstelstrategie met Jitter-strategie voor opnieuw proberen. De functie voor het berekenen van het volgende interval is de volgende (x is de xe poging): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
Constructors
Exponential |
Initialiseert een nieuw exemplaar van de ExponentialBackOffWithJitter klasse. |
Eigenschappen
immediate |
Booleaanse waarde die aangeeft of de eerste nieuwe poging onmiddellijk moet zijn (indien ingesteld op true) of na de vertraging normalParameters.c (indien ingesteld op false). |
normal |
Parameters voor opnieuw proberen die worden gebruikt voor het berekenen van de vertraging tussen elke nieuwe poging in normale situaties (dat wil dus niet beperkt). |
throttled |
Parameters voor opnieuw proberen die worden gebruikt voor het berekenen van de vertraging tussen elke nieuwe poging in beperkte situaties. |
Methoden
next |
Berekent het interval dat moet worden gewacht voordat het opnieuw wordt geprobeerd bij elke nieuwe poging voorlopig. |
should |
Op basis van de fout die als argument is doorgegeven, wordt bepaald of een fout tijdelijk is en of de bewerking opnieuw moet worden geprobeerd of niet. |
Constructordetails
ExponentialBackOffWithJitter(boolean, ErrorFilter)
Initialiseert een nieuw exemplaar van de ExponentialBackOffWithJitter klasse.
new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)
Parameters
- immediateFirstRetry
-
boolean
Booleaanse waarde die aangeeft of de eerste nieuwe poging onmiddellijk moet zijn (standaard) of het eerste interval (c-waarde) moet wachten.
- errorFilter
-
ErrorFilter
Eigenschapdetails
immediateFirstRetry
Booleaanse waarde die aangeeft of de eerste nieuwe poging onmiddellijk moet zijn (indien ingesteld op true) of na de vertraging normalParameters.c (indien ingesteld op false).
immediateFirstRetry: boolean
Waarde van eigenschap
boolean
normalParameters
Parameters voor opnieuw proberen die worden gebruikt voor het berekenen van de vertraging tussen elke nieuwe poging in normale situaties (dat wil dus niet beperkt).
normalParameters: ExponentialBackoffWithJitterParameters
Waarde van eigenschap
ExponentialBackoffWithJitterParameters
throttledParameters
Parameters voor opnieuw proberen die worden gebruikt voor het berekenen van de vertraging tussen elke nieuwe poging in beperkte situaties.
throttledParameters: ExponentialBackoffWithJitterParameters
Waarde van eigenschap
ExponentialBackoffWithJitterParameters
Methodedetails
nextRetryTimeout(number, boolean)
Berekent het interval dat moet worden gewacht voordat het opnieuw wordt geprobeerd bij elke nieuwe poging voorlopig.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parameters
- retryCount
-
number
Huidige poging voorlopig.
- isThrottled
-
boolean
Booleaanse waarde die aangeeft of de Azure IoT-hub bewerkingen beperkt.
Retouren
number
De tijd om te wachten voordat u een nieuwe poging probeert in milliseconden.
shouldRetry(Error)
Op basis van de fout die als argument is doorgegeven, wordt bepaald of een fout tijdelijk is en of de bewerking opnieuw moet worden geprobeerd of niet.
function shouldRetry(error: Error): boolean
Parameters
- error
-
Error
De fout die is opgetreden tijdens de bewerking.
Retouren
boolean
Of de bewerking opnieuw moet worden geprobeerd of niet.