단일서버 모든 컴포넌트가 한대의 서버에서 실행되는 방식. 많은 사용자가 이용한다면 트래픽을 처리하기 어렵고, 가용성 fail over가 불가능하여 실제 서비스에서는 사용하지않음.
사용자가 증가함에 따라 각자의 확장성을 위해서 서버와 데이터베이스를 분리한다. ※ 어떤 DB를 사용할 것인가? - 전통적으로 RDB를 많이 사용했지만, 최근에는 성능,기능,비즈니스 요건에 따라 NoSQL 등 다양한 DB를 사용. - NoSQL은 Key-value Store, Graph Store, Column Store, Document Store등 다양한 구조의 DB가 존재한다.
수직적 규모 확장 vs 수평적 규모 확장 스케일 업(Scale up) - CPU, Memory 등 다양한 고사양의 자원을 추가한다. 장점: 단순한다 단점: 한대의 서버에 CPU나 메모리를 무한대로 증설할 수없으므로 한계가 있다.
다중화 불가 스캐일 아웃(Scale out) - 새로운 서버를 새로 증설하여 수평적으로 자원을 추가 확...
원문 링크 : 1장. 사용자 수에 따른 규모 확장성