Hacker News인프라 · 데브옵스

우버, 재시도 폭주 막는 에러 소유권 체계 공개

원제 How Uber Protects Against Retry Storms

102 포인트댓글 45
Key Point

마이크로서비스 아키텍처에서 재시도 폭주는 전체 시스템을 마비시키는 주요 장애 원인인데, 우버가 공개한 에러 소유권 체계는 이를 근본적으로 해결하는 새로운 접근법이다.

핵심 요약

  • 재시도 폭주(retry storm)는 한 서비스 장애가 의존성 사슬을 따라 증폭되면서 전체 인프라를 마비시키는 현상으로, 깊이 d인 노드의 요청량은 R^d × Ƞ(R은 재시도 횟수)에 따라 지수적으로 증가한다.
  • 재시도 예산(retry budget) 개념을 도입하면 노드당 요청량을 (1+B)^d × Ƞ으로 억제할 수 있지만, 여전히 상류 서비스가 불필요하게 재시도한다.
  • 우버는 에러 원인을 구분하는 에러 소유권 체계를 제안했다: 서비스가 의존 서비스의 실패로 에러를 반환하면 증상이고, 자신의 문제로 에러를 반환하면 원인이며 소유자다.
  • 에러 원인지(root cause)를 파악하면 그 지점에서만 재시도를 허용하고 상류 서비스의 불필요한 재시도를 차단해 트래픽 폭주를 방지한다.
  • Service Dependency Analysis를 통해 인바운드 실패를 아웃바운드 실패와 연관시켜 에러 소유권을 자동으로 결정한다.
AI 요약 안내

AI가 한국어로 정리한 내용입니다. 정확한 정보는 원문을 확인해 주세요.

요약 원칙 ↗