1.1 모놀리식 아키텍처란
모놀리식(monolithic) 아키텍처는 널리 활용하는 전통적인 아키텍처로 하나의 애플리케이션 안에 모든 컴포넌트를 포함하는 구조입니다. 구조가 단순해 개발과 배포가 간편하다는 장점이 있습니다.
모놀리식 아키텍처를 이해하면 마이크로서비스(microservice) 아키텍처를 더 쉽게 이해할 수 있습니다. 지금부터 모놀리식 아키텍처를 개발하는 과정을 단계별로 예를 들어 살펴보겠습니다.
다음 요구 사항이 있다고 가정합니다.
• 기업형 e-commerce를 개발해야 합니다.
• 소수의 인원으로 개발팀이 구성되었습니다.
• 아직은 사용자가 많지 않습니다.
• 비교적 단순한 형태의 회원 관리, 상품 관리, 구매 관리 기능이 필요합니다.
요구 사항을 보니 비교적 형태가 단순한 시스템입니다. 특별히 고려할 만한 예외적 요소가 없으므로 일반적인 형태의 개발 과정을 생각해 보겠습니다.
1 사용자 입력을 받을 수 있는 UI를 기획합니다.
2 데이터를 관리할 수 있는 적절한 데이터베이스 스키마를 설계합니다.
3 애플리케이션을 하나 만들고, 사용자 입력을 받는 로직과 비즈니스 로직, 데이터베이스에 저장하는 로직을 코드 하나로 개발합니다.