Superbly Life & Development

스케일 아웃 vs 스케일 업

2019-08-30

trace


스케일 아웃(Scale out)

정의

접속된 서버의 대수를 늘려 처리 능력을 향상시는 것으로 수평 스케일로 불리기도 한다. 예를 들어, 1의 처리 능력을 가진 서버에 동일한 서버 4대를 더 추가하여, 총 5의 처리 능력을 만드는 것이다.
서버가 여러 대가 되기 때문에 각 서버에 걸리는 부하를 균등하게 해주는 로드밸런싱이 필수적으로 동반되어야 한다.
스케일 아웃의 경우, 서버 한 대가 장애로 다운되더라도 다른 서버로 서비스 제공이 가능하다는 장점이 있다.
반면 모든 서버가 동일한 데이터를 가지고 있어야 하므로, 데이터 변화가 적은 웹 서버에 적합한 방식이다.

적용

개개의 처리는 비교적 단순하지만 다수의 처리를 동시 병행적으로 실시하지 않으면 안되는 경우에 적합한데 갱신 데이터의 정합성(데이터가 서로 모순 없이 일관되게 일치해야 하는 경우) 유지에 대한 요건이 별로 어렵지 않은 경우에 적절하다.
높은 병렬성을 실현하기 쉬운 경우이다.

ex ) 웹 서버 펌, 메일 서버나 게시판 등의 어플리케이션

스케일 업(Scale up)

정의

스케일 업은 서버에 CPU나 RAM 등을 추가하거나 고성능의 부품, 서버로 교환하는 방법을 의미한다. 예를 들어 1의 처리 능력을 가진 서버 한 대를 5의 처리 능력을 가진 서버로 업그레이드 시키는 것이다.
CPU나 RAM을 추가하기로 했다면 현재 서버에 추가 부품을 장착할 수 있는 여유 슬롯이 있어야 하며, 그렇지 않은 경우 서버 자체를 고성능으로 교체하는 것이 필요하다.
스케일 업의 경우, 서버 한 대에 모든 부하가 집중되므로 장애 시 영향을 크게 받을 수 있는 위험성이 있다.
한 대의 서버에서 모든 데이터를 처리하므로 데이터 갱신이 빈번하게 일어나는 데이터베이스 서버에 적합한 방식이다.

적용

어플리케이션 서버에서 스케일 아웃이 가능해도 빈번히 갱신이 발생하여 정합성(데이터가 서로 모순없이 일관되게 일치해야 하는 경우) 유지가 어려운 데이터베이스 서버에서는 스케일 업이 필요하다. 즉 하나의 이미지 데이터베이스에 대해서 빈번히 갱신이 발생하는, OLTP(온라인 트랜잭션 처리)에는 스케일 업이 적합하다.


참고


다음 URI vs URL

Comments

Content