반응형
로드 밸런싱과 API 게이트웨이 – 분산 시스템의 핵심 컴포넌트
🧭 개요
분산 시스템에서 트래픽 분산과 API 요청 관리는 시스템의 성능과 안정성을 좌우하는 중요한 요소입니다.
이 역할을 담당하는 두 핵심 컴포넌트는 Load Balancer와 API Gateway입니다.
⚖️ Load Balancer vs API Gateway
| 기능 | Load Balancer | API Gateway |
|---|---|---|
| 역할 | 트래픽 분산, 서버 부하 분산 | API 요청 라우팅, 인증, 정책 처리 |
| 계층 | L4 (TCP/UDP), L7 (HTTP/HTTPS) | 애플리케이션 계층 (L7) |
| 주요 기능 | 헬스 체크, 부하 분산, 세션 유지 | 인증, 트래픽 제한, 데이터 변환 |
| 사용 목적 | 시스템 가용성 유지, 부하 최적화 | 클라이언트 요청 처리 및 보안 관리 |
🧱 Load Balancer 상세
주요 목적
- 서버 과부하 방지
- 성능 최적화
- 트래픽 균형 유지
- Auto Scaling 연계
알고리즘 종류
| 알고리즘 | 설명 | 적합한 경우 |
|---|---|---|
| Round Robin | 순차적으로 요청 분배 | 서버 성능이 균일할 때 |
| Least Connections | 연결 수가 가장 적은 서버로 분배 | 연결 유지 시간에 차이가 있을 때 |
| IP Hash | 클라이언트 IP로 서버 결정 | 상태 유지가 필요한 경우 |
| Weighted Round Robin | 서버 성능에 따른 가중치 분배 | 서버 성능 차이가 클 때 |
L4 vs L7 비교
| 구분 | L4 Load Balancer | L7 Load Balancer |
|---|---|---|
| 계층 | TCP, UDP | HTTP, HTTPS |
| 기준 | IP, 포트 | URL, 쿠키, 헤더 등 |
| 성능 | 빠름 | 상대적으로 느림 |
| 사용 예 | AWS NLB, HAProxy | AWS ALB, Nginx (reverse proxy) |
🚪 API Gateway 상세
주요 기능
- 인증(Authentication) 및 인가(Authorization)
- Rate Limiting (요청 속도 제한)
- 로깅 및 모니터링
- 데이터 변환 (예: Enum → String)
- 캐싱 (자주 조회되는 API 응답)
- DDoS 방어 및 보안 정책 적용
예: API 요청 시 JWT 토큰으로 인증 → 권한 확인 → 백엔드로 전달
🔁 통합 아키텍처 흐름
클라이언트
↓
API Gateway
↓
Load Balancer
↓
Back-End Services
GateWay는 인증/제한/보안/정책 처리, LoadBalancer는 실제 서버 분산 담당
🛠️ 실제 사례
🔸 AWS 기반
- API Gateway → Application Load Balancer (ALB) → ECS / Lambda
- CloudWatch로 로깅 및 경보 설정
🔸 Netflix 아키텍처
- Zuul → Ribbon → Hystrix (현재는 Spring Cloud Gateway로 전환)
- Client-side LB + Service Registry (Eureka)
✅ 결론
- Load Balancer는 물리적 트래픽 분산
- API Gateway는 논리적 요청 정책 관리
- 둘을 통합하면 시스템은 더욱 견고해지고 유연한 구조를 가질 수 있음
대규모 서비스를 구축하려면 두 컴포넌트를 함께 고려한 아키텍처 설계가 필요합니다.
반응형
'프로그래밍 이론 > 시스템 디자인 설계' 카테고리의 다른 글
| CDN(Content Delivery Network) (2) | 2025.07.14 |
|---|---|
| Monolith, MSA(Microservice) 아키텍쳐 (0) | 2025.07.14 |
| 분산시스템 _ CAP 이론 (2) | 2025.07.12 |