Поделиться через


ExponentialBackOffWithJitter class

Реализует экспоненциальную обратную передачу с помощью стратегии повторных попыток Jitter. Функция для вычисления следующего интервала является следующей (x — это повторная попытка xth): F(x) = min(Cmin+ (2^(x-1)-1) * rand(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 регулированием операций.

Возвращаемое значение

number

Время ожидания перед попыткой повтора в миллисекундах.

shouldRetry(Error)

На основе ошибки, переданной в качестве аргумента, определяет, является ли ошибка временной и если операция должна быть извлечена или нет.

function shouldRetry(error: Error): boolean

Параметры

error

Error

Ошибка, обнаруженная операцией.

Возвращаемое значение

boolean

Следует ли выполнить повторную операцию.