⚖️ 로드 밸런싱이란 ?
⚖️ 로드 밸런싱 완전 정복: 알고리즘부터 실무 적용까지
✅ 로드 밸런싱이란?
들어오는 네트워크 트래픽을 여러 서버로 분산하는 기술
로드 밸런서는 사용자의 요청을 받아서
적절한 서버에게 전달하는 게이트웨이 역할을 합니다.
📍 로드 밸런서를 사용하는 이유
- ✅ 트래픽 분산
- ✅ 고가용성 (서버 장애에도 서비스 유지)
- ✅ 수평 확장 용이 (서버를 추가하면 됨)
- ✅ 클라이언트와 서버 간 분리
🧠 로드 밸런서가 어디에 있나요?
[ Client ] → [ Load Balancer ] → [ Server A / B / C ]
- 웹 서버 앞단, API 서버 앞단 등 모든 트래픽 진입 지점에 위치
🧪 주요 로드 밸런싱 알고리즘 정리
알고리즘 | 설명 | 특징 |
---|---|---|
🎲 Round Robin | 서버들을 순서대로 순환 | 단순하고 균등하지만 성능 고려 X |
🎯 Weighted Round Robin | 서버마다 가중치 부여하여 순서 배분 | 성능 고려한 순환 |
🧮 Least Connections | 활성 연결 수가 가장 적은 서버 선택 | 동시 접속 분산 |
🏋️ Weighted Least Connections | 연결 수 + 서버 성능 고려 | 더 공정한 분산 |
🕐 Least Response Time | 응답 시간이 빠른 서버 선택 | 응답 성능 중심 |
🔒 IP Hash | IP로 해시 계산 → 서버 매핑 | 세션 유지 유리, 분산 불균형 위험 |
🎯 알고리즘별 예시 및 비교
✅ Round Robin
요청 순서 → A → B → C → A → B → C ...
- 균등하게 순환하나, 서버 상태는 고려하지 않음
✅ Weighted Round Robin
A: 2, B: 1 → A → A → B → A → A → B ...
- 더 강한 서버에 더 많은 요청 할당 가능
✅ Least Connections
- 현재 연결 수가 가장 적은 서버에 분배
A: 2 connections
B: 0 connections → 여기에 분배
✅ Least Response Time
- 가장 빨리 응답하는 서버를 실시간 모니터링하여 선택
✅ IP Hash
- 클라이언트 IP → 해시 → 고정 서버 매핑
IP 192.168.0.1 → Server A
IP 192.168.0.2 → Server B
- 세션 기반 서비스에 유리
- 하지만 부하가 불균형할 수 있음
🧱 로드 밸런서 계층: L4 vs L7
계층 | 설명 | 특징 |
---|---|---|
L4 (Transport Layer) | IP + Port 기반 TCP/UDP 로드밸런싱 | 빠르고 단순, 세션 유지 어려움 |
L7 (Application Layer) | HTTP Header, URI, Cookie 기반 | 세밀한 제어, 성능 비용 ↑ |
📌 예시:
- L4: 클라우드 Load Balancer, NLB
- L7: Nginx, AWS ALB, Istio Ingress
🛠 실무 적용 예시
🔸 Nginx 로드 밸런서
upstream backend {
server backend1.example.com;
server backend2.example.com;
}
server {
location / {
proxy_pass http://backend;
}
}
🔸 AWS ELB (Elastic Load Balancer)
- ALB (L7): HTTP path 기반 분기
- NLB (L4): TCP 기반 로드밸런싱
- 사용자가 몰려도 안정적인 트래픽 분산
🔸 Kubernetes Service (ClusterIP / LoadBalancer)
- Kubernetes는 기본적으로 Round Robin
- 서비스 뒤에 있는 여러 Pod에 균등 분배
⚠️ 로드 밸런싱 실무 유의사항
- 세션을 로컬 서버에 저장하면 → 세션 불일치 발생
- ✅ 해결: Sticky Session, Redis 세션 저장
- 실시간 응답 시간 기반 로직은 네트워크 지연 고려
- IP 해시는 NAT, 프록시, VPN 사용 시 IP 변경 주의!
🧠 한 줄 요약
로드 밸런싱은 트래픽을 똑똑하게 잘게 쪼개는 기술이다!
🎓 마무리 요약
항목 | 정리 |
---|---|
목적 | 트래픽 분산, 가용성 향상 |
알고리즘 | Round Robin, Least Connection, IP Hash 등 |
계층 | L4(속도), L7(정밀 제어) |
실무 사용 | Nginx, AWS ELB, Kubernetes 등 |
댓글남기기