모듈: Mongo::Retryable::Backpressure Private

다음에 정의됨:
lib/ Mongo/retryable/backpressure.rb

개요

이 모듈은 비공개 API의 일부입니다. 이 모듈은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

클라이언트 역압(재시도 루프의 지수 백오프 및 지터)에 대한 상수 및 헬퍼입니다.

이후:

  • 2.1.0

상수 요약 접기

BASE_BACKOFF =

이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

기본 백오프 지연 시간(초)입니다.

이후:

  • 2.1.0

0.1
MAX_BACKOFF =

이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

최대 백오프 지연 시간(초)입니다.

이후:

  • 2.1.0

10
DEFAULT_MAX_RETRIES =

이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

과부하 오류에 대한 기본값 최대 재시도 횟수입니다.

이후:

  • 2.1.0

2

클래스 메서드 요약 접기

클래스 메서드 세부 정보

.backoff_delay(시도, jitter: rand) ⇒ Float

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

주어진 재시도에 대한 백오프 지연을 계산합니다.

매개변수:

  • 시도 (정수)

    재시도 시도 횟수(1-인덱스)입니다.

  • 지터 (Float) (기본값: rand)

    [0.0, 1.0). 기본값은 임의의 값입니다. 결정론적 테스트를 위해 삽입할 수 있습니다.

반환합니다:

  • (Float)

    백오프 지연(초)입니다.

이후:

  • 2.1.0



26
27
28
# 파일 'lib/ Mongo/retryable/backpressure.rb', 줄 26

def self.backoff_delay(시도, 지터: 랜드)
  지터 * [ MAX_BACKOFF, BASE_BACKOFF * (2**(시도 - 1)) ].min
end