ExponentialBackOffWithJitter class
지터 재시도 전략을 사용하여 지수 백오프를 구현합니다. 다음 간격을 계산하는 함수는 다음과 같습니다(x는 x번째 재시도임): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
생성자
Exponential |
ExponentialBackOffWithJitter 클래스의 새 인스턴스를 초기화합니다. |
속성
immediate |
첫 번째 재시도를 즉시(true로 설정한 경우) 또는 normalParameters.c 지연 후(false로 설정된 경우) 여부를 나타내는 부울입니다. |
normal |
정상적인 상황에서 각 재시도 사이의 지연을 계산하는 데 사용되는 재시도 매개 변수입니다(즉, 제한되지 않음). |
throttled |
제한된 상황에서 각 재시도 사이의 지연을 계산하는 데 사용되는 재시도 매개 변수입니다. |
메서드
next |
각 새 재시도 미정에서 다시 시도하기 전에 대기할 간격을 계산합니다. |
should |
인수로 전달된 오류에 따라 오류가 일시적인지 여부와 작업을 다시 시도해야 하는지 여부를 결정합니다. |
생성자 세부 정보
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 Hub가 제한 작업인지 여부를 나타내는 부울입니다.
반환
number
재시도를 시도하기 전에 대기하는 시간(밀리초)입니다.
shouldRetry(Error)
인수로 전달된 오류에 따라 오류가 일시적인지 여부와 작업을 다시 시도해야 하는지 여부를 결정합니다.
function shouldRetry(error: Error): boolean
매개 변수
- error
-
Error
작업에서 발생한 오류입니다.
반환
boolean
작업을 다시 시도해야 하는지 여부입니다.