다음을 통해 공유


ReliableSessionBindingElement.MaxRetryCount 속성

정의

신뢰할 수 있는 세션 중에 메시지를 전송하려고 시도하는 최대 횟수를 가져오거나 설정합니다.

public:
 property int MaxRetryCount { int get(); void set(int value); };
public int MaxRetryCount { get; set; }
member this.MaxRetryCount : int with get, set
Public Property MaxRetryCount As Integer

속성 값

메시지를 다시 전송하려고 시도하는 최대 횟수입니다. 최소값은 1입니다. 최대값은 Int32.MaxValue입니다. 기본값은 8입니다.

예외

설정 값이 0보다 작거나 같은 경우

설명

받는 사람이 메시지 배달을 승인했으면 메시지가 전송된 것으로 간주됩니다.

전송된 메시지에 대해 일정 시간 내에 승인을 받지 못하면 인프라에서 자동으로 메시지를 다시 전송합니다. 인프라는 최대 MaxRetryCount 여러 번 메시지를 보내려고 시도합니다. 이 제한에 도달하기 전에 승인을 받지 못하면 심각한 통신 오류로 간주되고 채널 오류 이벤트가 발생합니다.

인프라는 지수 백오프 알고리즘을 사용하여 계산된 평균 라운드트립 시간에 따라 재전송 시간을 결정합니다. 초기 재시도 시간은 세션 설정의 측정된 왕복 시간을 기준으로 계산됩니다. 재전송 알고리즘은 모든 시도에서 지연 시간을 두 배로 늘리며, 첫 번째 전송 시도와 마지막 재전송 시도 간에 약 8.5분이 전달됩니다. 첫 번째 재전송 시도는 계산된 라운드트립 시간에 따라 조정되고 결과적으로 재전송 시도에 따라 늘어나는 시간이 달라집니다. 따라서 재전송 시간을 다양한 네트워크 조건에 맞게 동적으로 적용할 수 있습니다.

적용 대상