- 기존의 서버와 같은 사양 또는 비슷한 사양의 서버 대수를 증가시키는 방법으로 처리 능력을 향샹시키는 것
- aka. 수평 스케일
- 하나씩의 처리는 비교적 단순하지만 다수의 처리를 동시적으로 실시해야고, 갱신 데이터의 정합성(데이터가 서로 모순 없이 일관되게 일치해야하는 경우) 유지 요건이 별로 어렵지 않은 경우에 적절.
- 성능이나 용량 증강을 목적으로 하나의 서버에 디스크를 추가하거나 CPU나 메모리를 업그레이드 시키는 것
- aka. 수직 스케일
- 빈번한 갱신으로 인해 데이터의 정합성이 유지되기 어려운 경우 스케일 업이 적합. 즉, 하나의 데이터 베이스에 빈번한 갱신이 발생하는 이른바 OLTP (온라인 트랜젝션 처리) 에는 스케일 업이 적합
스케일 아웃 | 스케일 업 | |
---|---|---|
확장성 | 지속적 확장 가능 | 성능 확장에 한계 있음 |
서버 비용 | 비교적 저렴한 서버 사용하므로 일반적으로 비용 부담이 적음 | 성능 증가에 따른 비용 증가폭이 크며, 일반적으로 비용 부담이 큼 |
운영 비용 | 대수가 늘어날 수록 관리 편의성이 떨어지고 운영 비용 증가 | 관리 편의성이나 운영 비용은 큰 변화 없음 |
장애 | 읽기/쓰기가 여러 서버에 분산 되어 처리 되므로 장애시 전면 장애 가능성 적음 | 한대의 서버에 부하가 집중되므로 장애시 장애 영향도가 큼 |
주요 기술 (앱 관점) | Sharding, Query-off loading, Queue, In Memory Cache, NoSQL, Object Sorage, Distributed Storage | 고성능 CPU, 메모리 확장, SSD |
주요 용도 | 분산 처리 시스템 / 글로벌 웹 애플리케이션 | 고성능 legacy 어플리케이션 |
장단점 | 점진적 증가 가능하고 비교적 저렴하나 설계/구축/관리 비용 증가 | 구축이 쉽고 관리가 용이하나 점진적 증가가 어렵고 근본적인 해결이 안될 수 있음 |