共用方式為


ExponentialBackOffWithJitter class

實作具有抖動重試策略的指數輪詢。 計算下一個間隔的函式是下列 (x 是第 x 次重試) :F (x) = min (Cmin+ (2^ (x-1) -1) * (C * (1 – Jd) C* (1-Ju) ) ,Cmax)

建構函式

ExponentialBackOffWithJitter(boolean, ErrorFilter)

初始化 ExponentialBackOffWithJitter 類別的新執行個體。

屬性

immediateFirstRetry

布林值,指出如果設定為 true) 或 normalParameters.c 延遲之後,第一次重試是否應立即 (,如果設定為 false) ,則為 (。

normalParameters

在正常情況下,用來計算每個重試之間的延遲 (重試參數。未節流) 。

throttledParameters

在節流情況下,用來計算每個重試之間的延遲的重試參數。

方法

nextRetryTimeout(number, boolean)

計算在每次新的重試暫訂前等候的間隔。

shouldRetry(Error)

根據傳遞為引數的錯誤,判斷錯誤是否為暫時性,以及是否應重試作業。

建構函式詳細資料

ExponentialBackOffWithJitter(boolean, ErrorFilter)

初始化 ExponentialBackOffWithJitter 類別的新執行個體。

new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)

參數

immediateFirstRetry

boolean

布林值,指出第一次重試是否應立即 (預設) ,或等候第一個間隔 (c 值) 。

errorFilter

ErrorFilter

屬性詳細資料

immediateFirstRetry

布林值,指出如果設定為 true) 或 normalParameters.c 延遲之後,第一次重試是否應立即 (,如果設定為 false) ,則為 (。

immediateFirstRetry: boolean

屬性值

boolean

normalParameters

在正常情況下,用來計算每個重試之間的延遲 (重試參數。未節流) 。

normalParameters: ExponentialBackoffWithJitterParameters

屬性值

ExponentialBackoffWithJitterParameters

throttledParameters

在節流情況下,用來計算每個重試之間的延遲的重試參數。

throttledParameters: ExponentialBackoffWithJitterParameters

屬性值

ExponentialBackoffWithJitterParameters

方法詳細資料

nextRetryTimeout(number, boolean)

計算在每次新的重試暫訂前等候的間隔。

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

參數

retryCount

number

目前的重試暫訂。

isThrottled

boolean

布林值,指出 Azure IoT 中樞是否正在節流作業。

傳回

number

嘗試重試前,以毫秒為單位的等候時間。

shouldRetry(Error)

根據傳遞為引數的錯誤,判斷錯誤是否為暫時性,以及是否應重試作業。

function shouldRetry(error: Error): boolean

參數

error

Error

作業遇到的錯誤。

傳回

boolean

是否應該重試作業。