
511
13
장
확장
“더 큰 배가 필요할 것 같네요.”“더 큰 배가 필요할 것 같네요.”
브로디 경찰서장, <죠스> (
1975
)
시스템을 확장
scale
하는 이유는 두 가지 중 하나다. 첫째, 더 많은 부하를 처리하거나 지연 시간
을 개선하는 등 시스템 성능을 항상시키기 위해서다. 둘째, 시스템의 견고성을 개선하기 위해
서다. 이 장에서는 다양한 확장 유형을 설명하는 모델을 살펴본 다음 마이크로서비스 아키텍처
를 사용해 각 확장 유형을 구현하는 방법을 자세히 살펴본다. 이 장을 마칠 때쯤이면 앞으로 발
생할지도 모를 확장 문제를 처리하는 다양한 기술을 갖추게 될 것이다.
하지만 적용하고 싶은 확장 유형을 우선 살펴보자.
13.113.1
확장의 네 가지 축 확장의 네 가지 축
시스템 확장에 사용되는 기술은 제약 조건의 종류에 따라 달라질 수 있으므로, 시스템을 확장
하는 단 하나의 올바른 방법이란 없다. 성능, 견고성, 또는 두 가지 다 도움이 되는 다양한 확장
유형을 적용할 수 있으며, 이러한 확장 유형을 설명하기 위해 자주 사용되는 모델은 『
The
Art
of
Scalability
』
11
에 나오는 확장 육면체
Scale
Cube
다. 이 모델은 컴퓨터 시스템의 맥락에서 기능
1 1
마틴 애봇(
Martin
L
.
Abbott
)과 마이클 피셔(
Michael
T
.
Fisher ...