인터페이스 구현난도 상
16번 · 주관식 · 5점
다음 재시도 코드는 일시적인 503 응답이 발생하면 여러 클라이언트의 요청을 같은 시점에 몰리게 하고, 응답 유실 뒤 같은 생성 요청을 다시 보내 중복 작업도 만든다. 재시도 간격과 중복 처리 문제를 함께 줄이는 세 가지 핵심 요소를 쓰시오.
repeat up to 5 times:
response = POST /jobs
if response.status != 503: break
sleep(1000 ms) // 모든 클라이언트가 동일