- 네트워크·인터넷 맥락
- 업스트림(upstream): upload 일반 사용자의 PC·모바일에서 데이터가 서버로 올라가는 방향 (upload)
- 다운스트림(downstream): download 서버에서 사용자 쪽으로 내려오는 방향 (download)
- 마이크로서비스·MSA 맥락
- 업스트림(upstream): caller “지금 이 서비스를 호출해 주는(요청을 보내는)” 상위 서비스나 클라이언트
- 다운스트림(downstream): callee “지금 이 서비스가 호출하는(요청을 보내는)” 하위 서비스
사용자(업스트림) → 웹앱 서비스(내 서비스) → 상품 서비스(다운스트림) → DB 서비스(더 아래 다운스트림)
일반적인 IT·네트워크 분야에서는 업로드/다운로드 맥락으로 “업스트림/다운스트림” 용어가 훨씬 오래, 더 많이 쓰였어요. 파일 전송이나 통신 장비 스펙에서도 수십 년 전부터 쓰여 왔으니까요.
하지만 백엔드 MSA 설계나 API 설계 문서에서는 서비스 간 호출 방향을 설명할 때 “업스트림 서비스/다운스트림 서비스” 표현이 이미 표준처럼 굳어졌습니다. 즉,
- 네트워크 전반에서는 파일 전송·통신 기준의 업스트림·다운스트림이 더 보편적이고,
- MSA 설계 분야에서는 서비스 호출 기준의 업·다운스트림이 주로 쓰입니다.
결국 “어느 쪽이 더 많이 쓰인다”는 기준이
- 범용 IT·네트워크 분야를 말하면 첫 번째(업로드/다운로드 맥락)이고,
- 마이크로서비스·백엔드 설계 분야를 말하면 두 번째(서비스 호출 맥락)입니다.
반응형
'System Architect' 카테고리의 다른 글
| outbox 패턴 (0) | 2025.06.16 |
|---|---|
| 쿠버네티스(K8s, kubernetes) (0) | 2025.06.01 |
| 딥링크 (0) | 2025.05.23 |
| OAuth2.0 (0) | 2025.05.23 |
| 시스템설계 Q&A 3 (0) | 2025.04.06 |
