ExponentialBackOffWithJitter class
Implementiert einen exponentiellen Backoff mit Jitter-Wiederholungsstrategie. Die Funktion zum Berechnen des nächsten Intervalls ist folgendes (x ist der xte Wiederholungsversuche): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
Konstruktoren
Exponential |
Initialisiert eine neue Instanz der ExponentialBackOffWithJitter Klasse. |
Eigenschaften
immediate |
Boolescher Wert, der angibt, ob der erste Wiederholungsversuche sofort (wenn auf "true" festgelegt) oder nach der Verzögerung "normalParameters.c" (wenn auf "false" festgelegt) sein soll. |
normal |
Wiederholungsparameter, die verwendet werden, um die Verzögerung zwischen jedem Wiederholungsversuche in normalen Situationen (dh nicht gedrosselt) zu berechnen. |
throttled |
Wiederholungsparameter, die verwendet werden, um die Verzögerung zwischen jedem Wiederholungsversuche in eingeschränkten Situationen zu berechnen. |
Methoden
next |
Berechnet das Intervall, das gewartet werden soll, bevor bei jedem neuen Wiederholungsversuche mit Vorbehalt versucht wird. |
should |
Anhand des als Argument übergebenen Fehlers wird ermittelt, ob ein Fehler vorübergehend ist und ob der Vorgang wiederholt werden soll oder nicht. |
Details zum Konstruktor
ExponentialBackOffWithJitter(boolean, ErrorFilter)
Initialisiert eine neue Instanz der ExponentialBackOffWithJitter Klasse.
new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)
Parameter
- immediateFirstRetry
-
boolean
Boolescher Wert, der angibt, ob der erste Wiederholungstest sofort (Standard) sein soll, oder warten Sie das erste Intervall (c-Wert).
- errorFilter
-
ErrorFilter
Details zur Eigenschaft
immediateFirstRetry
Boolescher Wert, der angibt, ob der erste Wiederholungsversuche sofort (wenn auf "true" festgelegt) oder nach der Verzögerung "normalParameters.c" (wenn auf "false" festgelegt) sein soll.
immediateFirstRetry: boolean
Eigenschaftswert
boolean
normalParameters
Wiederholungsparameter, die verwendet werden, um die Verzögerung zwischen jedem Wiederholungsversuche in normalen Situationen (dh nicht gedrosselt) zu berechnen.
normalParameters: ExponentialBackoffWithJitterParameters
Eigenschaftswert
ExponentialBackoffWithJitterParameters
throttledParameters
Wiederholungsparameter, die verwendet werden, um die Verzögerung zwischen jedem Wiederholungsversuche in eingeschränkten Situationen zu berechnen.
throttledParameters: ExponentialBackoffWithJitterParameters
Eigenschaftswert
ExponentialBackoffWithJitterParameters
Details zur Methode
nextRetryTimeout(number, boolean)
Berechnet das Intervall, das gewartet werden soll, bevor bei jedem neuen Wiederholungsversuche mit Vorbehalt versucht wird.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parameter
- retryCount
-
number
Aktueller Wiederholungsversuche mit Vorbehalt.
- isThrottled
-
boolean
Boolescher Wert, der angibt, ob der Azure IoT-Hub Drosselungsvorgänge ist.
Gibt zurück
number
Die Zeit, die gewartet werden soll, bevor Sie versuchen, einen Wiederholungsversuch in Millisekunden auszuführen.
shouldRetry(Error)
Anhand des als Argument übergebenen Fehlers wird ermittelt, ob ein Fehler vorübergehend ist und ob der Vorgang wiederholt werden soll oder nicht.
function shouldRetry(error: Error): boolean
Parameter
- error
-
Error
Der Fehler, der durch den Vorgang aufgetreten ist.
Gibt zurück
boolean
Gibt an, ob der Vorgang wiederholt werden soll.