멀티모듈(2)
-
[Spring] Gradle multi-module 프로젝트 세팅하기
Gradle Multi Module로 프로젝트를 구성하는 이유 꽤나 잘 만들어진 오픈소스 프로젝트나 회사의 대부분 프로젝트에서는 멀티모듈로 구성하여 프로젝트를 운영합니다. 여러 이유가 있겠지만, 가장 큰 이유 1개만 꼽자면 모듈간 의존성을 줄이기 위함이라고 생각합니다. ( '멀티 모듈 = 모듈의 분산' -> 분산의 가장 큰 이점은 의존성 감소 ) 여러사람이 함께 참여하는 프로젝트에서는 작업 결과물의 반영, 그리고 배포 파이프라인의 분리 등의 이유로 멀티 모듈을 사용한다고 알고 있습니다. Multi Module로 프로젝트 단점 멀티 모듈 구성은 단점도 있습니다. 관리 포인트가 늘어나는 것은 명백한 단점입니다. 흔히 core 혹은 common (같이 쓰는데도 있고)이라 불리는 공통 영역을 두고 사용하는데, ..
2023.02.18 -
[아키텍처] 스프링 멀티 모듈 설계 - 헥사고날 아키텍처
최근 하나의 모듈로 개발했던 프로젝트를 멀티 모듈로 분할을 진행하면서 과연 올바른 방법으로 멀티모듈이 설계가 된건가... 라는 물음과 이게 과연 적절한 것인가...하는 물음이 발생했습니다. 자료를 찾아보면서 다시금 정리를 해본바... '싹다 갈아 엎을까?'라는 생각이 많이 들고 있습니다. 개인적인 경험으로 보았을 때, 멀티 모듈을 구성하는 이유(분산 아키텍처를 수용하는 이유)는 두가지라고 생각합니다. 단일 실패지점(SPOF)에 의해 전체 시스템이 마비가 되는 것을 방지 높은 응집도와 낮은 결합도를 가지고 유지보수성 증가 그래서 적용은 해보고 싶은데, 참 어렵습니다. 그래서 멘토링 경험을 계기로 인프콘 세션 중 '실전!멀티 모듈 프로젝트 구조와 설계' 라는 주제로 네이버 김대성님이 발표해주신 세션 내용을 ..
2022.12.14