축척 큐브
Scale cube스케일 큐브는 해당 시스템의 증가하는 수요 수준을 충족하기 위해 기술 플랫폼을 확장할 수 있는 세 가지 방법(또는 접근 방식)을 나타내는 기술 모델이다.모델에 의해 정의된 세 가지 접근방식은 복제나 복제를 통한 확장("X축"), 서비스 경계나 상이한 구성요소를 통한 분할("Y축") 및 유사한 구성요소("Z축")를 통한 분할 또는 분할("Z축")[1][2][3][4][5][6]이다.
역사
이 모델은 '확장성의 기술' 초판의 책에 처음 실렸다.[7]저자들은 2007년 자사 블로그에 이 모델을 처음으로 온라인에 게재했다고 주장한다.[6]후속 모델 버전은 2011년 확장성 규칙 제1판,[8] 2015년 확장성 기술 제2판, 2016년 확장성 규칙 제2판에 게재됐다.[9]
모델 개요
모델의 X축은 서비스의 복제나 데이터 세트의 복제를 통해 동일한 구성요소의 여러 인스턴스를 통해 기술 솔루션을 확장하는 방법을 설명한다.솔루션 확장을 위해 로드 밸런서 뒤에 동일한 기능을 수행하는 웹 및 애플리케이션 서버가 있을 수 있다.데이터베이스와 같은 데이터 지속성 시스템은 높은 트랜잭션 처리량을 위해 복제될 수 있다.[1]이 모델의 Y축은 단일 응용 프로그램을 실행 단어(verbs)를 사용하여 서비스로 분리하거나, "dissimilar" 사물을 분리하여 기술 솔루션을 확장하는 것을 기술한다.데이터는 명사로 구분할 수 있다.서비스에는 해당 서비스와 분리되고 격리된 활동을 하는 데이터가 있어야 한다.[1][10]큐브의 Z축은 "비슷한" 경계를 따라 구성요소를 분리함으로써 기술 솔루션의 규모를 설명한다.이러한 구분은 고객 ID 번호 등을 따라 지리적 기준으로 이루어질 수 있다.[1][11]
X축
X축 배율은 가장 일반적으로 사용되는 접근법이며 가장 구현하기 쉬운 경향이 있다.잠재적으로 비용이 소요될 수 있지만, 이를 구현하고 문제를 완화할 수 있는 속도가 비용을 상쇄하는 경향이 있다.X축은 트래픽 급증이나 서버 가동 중단에 도움이 되도록 로드 밸런싱이 가능한 서비스의 단순한 복사본인 경향이 있다.비용은 특히 지속성 계층을 다룰 때 압도적으로 증가하기 시작할 수 있다.[6]
X축 스케일링의 장점
- 지적으로 쉬운
- 트랜잭션 규모 조정
- 빠른 구현
X축 스케일링의 반대
- 비용(여러 데이터베이스 복사본)
- 캐싱을 처리하지 않음
- 조직 규모 해결 안 함
Y축
Y축 스케일링은 단일 코드 기반 청크를 탈피하기 시작하고 별도의 서비스 또는 때로는 마이크로 서비스를 생성한다.[12]이러한 분리는 책임과 책임뿐만 아니라 결함 격리를 위해 명확하게 정의된 차선을 만든다.한 서비스가 실패하면 자기 자신만 무너뜨리고 다른 서비스만 무너뜨리면 안 된다.[6][13]
Y축 스케일링의 장점
- 조직 확장 허용
- 트랜잭션 규모 조정
- 결함 분리
- 캐시 적중률 증가
Y축 스케일링의 반대
- 지적으로 힘들다
- 구현에 시간이 소요됨
Z축
Z축 스케일링은 일반적으로 유사한 데이터 사용 사례를 살펴본다.그것이 본질적으로 지리적인지, 고객이 당신의 웹사이트를 사용하는 방식인지, 혹은 당신의 고객 데이터셋의 무작위적인 계량인지 여부.Z축은 고객을 격리된 섹션으로 구분하여 응답 시간을 단축하고 특정 지역 또는 섹션이 다운될 경우 문제를 없앨 수 있도록 돕는다.[6][14]
Z축 스케일링의 장점
- 지적으로 쉬운
- 트랜잭션 규모 조정
- 고장 분리를 제공할 수 있음
- 응답 시간을 개선할 수 있음
Z축 스케일링 반대
- 구현에 시간이 소요됨
- 조직 규모 해결 안 함
- 시스템 오버헤드를 줄이기 위해 자동화 향상 필요
참조
- ^ a b c d e Abbott, Martin; Fisher, Michael (June 13, 2015). The Art of Scalability : Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise (Second ed.). Addison-Wesley. p. 2. ISBN 978-0134032801.
- ^ "Scaling Applications: The Scale Cube". Geek Narrator.
- ^ "Architecture Cubed". Benefit Focus.
- ^ a b "The scale cube". Lynda.
- ^ "Scale Cube". AgileDev.
- ^ a b c d e "The Scale Cube". AKF Partners.
- ^ Abbott, Martin; Fisher, Michael (December 15, 2009). The Art of Scalability : Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise (First ed.). Addison-Wesley. ISBN 978-0137030422. 2009년 12월 15일.
- ^ Abbott, Martin; Fisher, Michael (May 4, 2011). Scalability Rules : Principles for Scaling Web Sites (First ed.). Addison-Wesley. ISBN 978-0321753885.
- ^ Abbott, Martin; Fisher, Michael (September 9, 2016). Scalability Rules : Principles for Scaling Web Sites (Second ed.). Acknowledgements Section: Addison-Wesley. ISBN 978-0134431604.
- ^ "From Monoliths to Microservices: An Architectural Strategy". The New Stack.
- ^ "Z-Axis Scaling". Shekhar Gulati.
- ^ "What are Microservices?". AKF Partners.
- ^ "Architectural Principles-Fault Isolation and Swimlanes". AKF Partners.
- ^ "AKF Scale Cube: Ze Case for Z Axis". AKF Partners.