반응형 모듈화2 [MSA] 모놀리식 어플리케이션 분해 전략(서비스 분리) 모놀리식 어플리케이션을 분해하는 전략을 알아본다. 아래 내용들은 도서 '소프트웨어 아키텍처 The Hard Parts'를 참조했다. 아래 그림은 모놀리식 분해 전략을 위한 의사 결정 트리이다. 먼저 어플리케이션이 모듈화할 명분이 있는가?를 식별한다. 다시 말해 유지보수성, 테스트성, 배포성, 민첩성, 유연성 등을 필요로 하는 모놀리식 어플리케이션인지를 판단한다. 모놀리식 어플케이션 분해(모듈화)의 필요성에 대한 자세한 내용은 아래 링크를 참조한다.https://happy-jjang-a.tistory.com/323 다음으로 분해가 가능한 코드인지를 평가한다. 코드 내부 구조가 적절한지 판별하는 절대적인 기준은 없으나, 코드의 특성을 거시적으로 살펴보는 방법들을 활용하면 내부 구조(특히, 컴포넌트/패키지 .. 2024. 8. 17. [MSA] 모듈화와 아키텍처 퀀텀 시스템 및 서비스 모듈화가 왜 필요하고 이와 관련된 아키텍처 퀀텀이라는 것은 무엇인지 정리해본다. 모듈화(분산 시스템)모듈화란 시스템을 작은 단위로 분리하여 나누는 것으로 기본적으로 결합도를 낮추는 것이라고 할 수 있다. 비즈니스가 경쟁 우위를 유지하기 위해서는 아래 그림처럼 시장 출시 속도가 빨라야 하고, 이를 위해서는 민첩성이 필요하다. 기술적으로 보면 가용성, 확장성, 배포성, 시험성(테스트), 유지 보수성이 필요하다고 할 수 있다. 특히, 기술 때문에 비즈니스가 발목을 잡히지 않게 하려면 민첩성(배포성, 시험성(테스트), 유지 보수성)은 필수이다. 그리고 모듈화를 통해서 기술적인 부분들이 용이해 질 수 있다. 확장성, 탄력성 모듈화를 통해 필요한 기능만 독립적으로 리소스 낭비없이 빠른 속도로 대.. 2024. 8. 15. 이전 1 다음 반응형