예제 파일

원문: https://youdozi.github.io/ko/posts/2026-10-30-webclient-timeout-retry/

새 빈 디렉터리에 압축을 풀고 그 디렉터리에서 명령을 실행하세요.

실행 환경
JDK 17·Gradle 8.4·Boot BOM 3.5.7·MockWebServer 4.12.0. 최초 의존성 해결에는 네트워크가 필요합니다. Gradle wrapper는 포함하지 않습니다.

명령
gradle --no-daemon clean test

확인 범위
아홉 테스트: 루프백 HTTP 일곱 가지와 가상 시간의 합성 exchange 두 가지. GET 전용이며 HTTP 503만 두 번 재시도합니다. TCP 연결 타임아웃 재현·운영 지연 보장·쓰기 멱등성·Retry-After·지터·부하 조율은 포함하지 않습니다. 구독마다 애플리케이션 시도는 최대 세 번입니다.

출력·적용 조건·실패 사례는 본문을 함께 읽으세요. PROVENANCE.json에는 원문과 파일 해시를 기록합니다. 해시는 파일의 일치를 확인하며 정확성을 보증하지 않습니다.
