Users Service 호출이 실패하거나 늦어집니다.
Gateway는 내부 실패를 클라이언트가 이해할 HTTP 응답으로 바꾼다
gRPC 오류, 부분 실패, timeout은 그대로 노출하지 않고 외부 API 계약에 맞는 상태 코드와 메시지로 정리합니다.
재시도할지, 404/502로 바꿀지, 주문만 반환할지 정합니다.
클라이언트는 내부 프로토콜을 몰라도 같은 규칙으로 처리합니다.
| 내부 상태 | Gateway 판단 | HTTP 응답 |
|---|---|---|
| NOT_FOUND | 없는 사용자로 확정 | 404 User not found |
| UNAVAILABLE | 상류 서비스 장애 | 502 또는 fallback 응답 |
| Order exists, User fail | 부분 실패 허용 | 200 + user:null + message |
핵심: 게이트웨이는 내부 오류를 숨기는 곳이 아니라, 클라이언트가 처리 가능한 외부 실패 계약으로 번역하는 곳입니다.