Freigeben über


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

ExponentialBackOffWithJitter(boolean, ErrorFilter)

Initialisiert eine neue Instanz der ExponentialBackOffWithJitter Klasse.

Eigenschaften

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.

normalParameters

Wiederholungsparameter, die verwendet werden, um die Verzögerung zwischen jedem Wiederholungsversuche in normalen Situationen (dh nicht gedrosselt) zu berechnen.

throttledParameters

Wiederholungsparameter, die verwendet werden, um die Verzögerung zwischen jedem Wiederholungsversuche in eingeschränkten Situationen zu berechnen.

Methoden

nextRetryTimeout(number, boolean)

Berechnet das Intervall, das gewartet werden soll, bevor bei jedem neuen Wiederholungsversuche mit Vorbehalt versucht wird.

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.

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.