Backend) scale up, scale out, scale in

오성민·2022년 12월 13일
0

CS

목록 보기
4/10
post-thumbnail

BE를 준비한다면 서버 관련된 내용도 알아야 되는 것이 분명하다.

관련된 내용을 공부하다가 scale up/out/in을 알게 돼서 해당 내용을 정리하려고 한다.

scale up

scale up은 서버의 사양이 부족하여서 사용하는 서버의 사양을 높이는 것으로 "수직 스캐일링" 이라고도 한다.

하드웨어로 예를 든다면 기존보다 더 좋은 부품으로 부품을 교체해서 하드웨어의 성능을 올리는 것이고,
AWS를 예로 든다면 더 좋은 사양에 EC2 인스턴스를 사용하는 것이다.

scale out

scale out은 scale up을 통해서 서버의 사양을 올리다가 그것이 더 이상 효율적이지 못 할 때, 서버의 사양을 늘리는 것이 아닌 서버의 개수를 늘리는 것으로 "수평 스캐일링" 이라고도 한다.

하드웨어를 예로 든다면 컴퓨터의 개수를 늘리는 것이고,
AWS로 예를 든다면 서버의 개수를 늘리는 것이다.

scale in

scale in은 이름에서도 알 수 있듯이 scale out 과는 반대로 늘린 서버를 줄이는 것이다.

장단점

scale up 장단점

장점

  • 단순하게 성능을 올리는 것이기 때문에 비교적 방법이 쉽다.
  • 유지보수가 측면에서 좋다.

단점

  • 필요량을 예측하고 성능을 올렸지만 그만큼의 수요가 없다면 틀린 예측량만큼의 손해가 발생을 한다.
  • 기존 성능의 서버에서 더 좋은 성능의 서버로 옮긴다면 잠깐 동안이지만 서버가 멈추는 현상이 일어난다.
  • 확장성이 낮다.
  • 문제가 생겨서 서버가 다운이 되는 현상에 취약하다.

scale out 장단점

장점

  • 확장성이 좋다.
  • 최소한의 손해를 볼 수 있다.

단점

  • 병렬 컴퓨팅 환경을 구성하고 유지함에 있어서 어렵고 힘들다.
  • 어려운만큼 높은 이해도를 요구한다.
profile
풀스택을 지향하는 개발자

0개의 댓글