분산 시스템의 확장성 (Scalability)
Jan 23, 2026 · Updated Jan 27, 2026
핵심 개념
섹션 제목: “핵심 개념”분산 시스템의 확장성(Scalability)은 시스템이 증가하는 서비스 부하에 적응하여 성능을 유지할 수 있는 능력이다. 시스템은 유한한 자원을 가지며, 설계 단계부터 확장성을 고려해야 한다.
동작 원리
섹션 제목: “동작 원리”확장 가능한 시스템의 특징
섹션 제목: “확장 가능한 시스템의 특징”- 성능 저하가 점진적 (갑작스러운 붕괴 없음)
- 자원 포화 시점이 늦음
- 새 자원 추가가 용이
확장을 위한 설계 원칙
섹션 제목: “확장을 위한 설계 원칙”- 분산된 제어와 데이터: 중앙 병목 회피
- 여유 자원 확보: 신뢰성과 피크 부하 대응
- 수평 확장(Scale-out): 머신 추가로 처리 능력 증가
- 수직 확장(Scale-up): 기존 머신의 성능 향상
스토리지 효율 기법
섹션 제목: “스토리지 효율 기법”- 압축(Compression): 무손실 압축으로 저장 공간 절약
- 중복 제거(Deduplication): 시스템 전체에서 동일 데이터를 하나만 저장
확장성 관련 트레이드오프
섹션 제목: “확장성 관련 트레이드오프”| 설계 결정 | 확장성 영향 |
|---|---|
| 중앙 집중 코디네이터 | 병목 지점 → 확장성 저해 |
| 분산 조정 | 복잡도 증가, 확장성 향상 |
| 강한 일관성 | 동기화 오버헤드 → 확장성 저해 |
| 약한 일관성 | 확장성 향상, 데이터 불일치 가능 |
초기: 서버 1대로 1000명 사용자 처리성장: 사용자 5000명으로 증가
비확장적 설계:- 서버 과부하 → 성능 급락 → 서비스 장애
확장적 설계:- 서버 4대 추가 → 부하 분산 → 성능 유지- 또는 더 강력한 서버로 교체 (수직 확장)과부하된 컴포넌트는 장애 컴포넌트처럼 동작할 수 있으므로, 여유 자원이 신뢰성과 확장성 모두에 필수적이다.
관련 개념
섹션 제목: “관련 개념”- 분산 시스템의 견고성 (Robustness) - 확장성과 함께 분산 시스템의 핵심 품질 속성인 견고성
- 분산 시스템의 투명성 (Transparency) - 확장 시에도 유지해야 하는 분산 시스템의 투명성
- 분산 시스템 (Distributed System) - 확장성이 요구되는 분산 시스템의 기본 구조
- 클러스터 기반 DFS (GFS, HDFS) - 수평 확장 설계가 적용된 대표적 분산 파일 시스템
- 클라이언트-서버 DFS (NFS, OpenAFS) - OpenAFS가 확장성을 설계 목표로 삼은 클라이언트-서버 DFS