WEBBOOK CHAPTER

외부 인터페이스 엔지니어링: 41장. Rate Limit을 전체 Deadline과 묶는다

41장. Rate Limit을 전체 Deadline과 묶는다

429의 Retry-After를 존중하되 사용자 request deadline을 넘으면 queue로 전환하거나 명시적 실패를 반환한다. client·gateway·service·SDK retry 합계를 센다. exponential backoff와 jitter, concurrency semaphore, provider/operation별 token bucket을 둔다. POST는 provider idempotency가 없으면 자동 retry하지 않는다.

부하 실습은 429와 slow body를 섞어 amplification, pool, queue oldest와 비용을 측정한다. worker 증설이 provider limit을 악화시키지 않는지 본다. retry budget 소진은 정상 200으로 숨기지 않는다.