개요
웹 서버 및 리버스 프록시 도구 정리. HTTP 트래픽 라우팅, SSL 종료, 로드밸런싱 담당.
주요 도구
Nginx
- 가장 널리 쓰이는 고성능 웹 서버 + 리버스 프록시
- 이벤트 기반 비동기 아키텍처 → 높은 동시 접속 처리
- 정적 파일 서빙, 리버스 프록시, 로드밸런서, SSL 종료 모두 지원
- 설정이 상대적으로 복잡하지만 유연함
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:3000;
}
}Traefik
- 컨테이너·클라우드 네이티브 리버스 프록시
- Docker/Kubernetes 라벨로 자동 서비스 디스커버리
- Let’s Encrypt SSL 자동 발급·갱신
- 대시보드 내장
# Docker 라벨로 자동 설정
labels:
- "traefik.http.routers.app.rule=Host(`example.com`)"
- "traefik.http.routers.app.tls.certresolver=letsencrypt"Envoy
- CNCF 프로젝트, L7 프록시
- Istio Service Mesh의 데이터플레인으로 사용
- gRPC, HTTP/2 지원 강력
- 직접 사용보다 Service Mesh 컴포넌트로 주로 활용
Caddy
- Go 언어로 작성, 자동 HTTPS(Let’s Encrypt) 기본 탑재
- 설정이 매우 단순 (Caddyfile)
- 정적 파일 서버로도 활용
example.com {
reverse_proxy localhost:3000
}
용도별 추천
| 용도 | 추천 |
|---|---|
| 컨테이너 환경 자동 라우팅 | Traefik |
| 고성능·대규모 트래픽 | Nginx |
| Service Mesh 데이터플레인 | Envoy |
| 간단한 HTTPS 셀프호스팅 | Caddy |