인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

bamho님의 프로필 이미지

작성한 질문수

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

SOA vs. MSA

멀티모듈 질문

작성

·

104

0

혹시 강의에 멀티모듈구조 설정하는 방법이 있을까요 ? 하나의 프로젝트에서 무듈별로 나누는 방법은 제공하지 않겠죠 ?

답변 2

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

말씀하신 내용처럼 IDE(IntelliJ)에서 멀티모듈을 작성하는 과정을 별도로 설명드리고 있지는 않습니다만, 아래 이미지로 설명을 조금 추가해 드립니다.

1) IntelliJ에서 새로운 프로젝트 시작 시 Module 선택

스크린샷 2025-04-23 오전 8.21.11.png.webp

 

2) 해당 모듈이 Root 프로젝트(이경우에는 toy-msa)의 pom.xml(메이븐의 경우)에 추가

스크린샷 2025-04-23 오전 8.20.37.png.webp

3) 프로젝트 설정(Product Structure) > Modules 메뉴에 해당 모듈 포함

스크린샷 2025-04-23 오전 8.21.24.png.webp

위 과정으로 진행해 보실 수 있습니다.

추가 질문 사항 있으시면 다시 말씀해 주세요.

감사합니다.

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다.

bamho님께서 질문하신 멀티모듈 구조 설정에 대한 부분은, 강의에서 주로 단일 모듈 기반으로 설명이 진행되었을 가능성이 있습니다. 하지만 멀티모듈 설정 자체는 Spring 기반 프로젝트에서 흔히 사용하는 방식이기 때문에 관련 정보를 제공할 수 있는 유사한 질문과 답변을 찾아 소개해드리겠습니다.

첫째로, 멀티모듈 프로젝트를 구성하는 방법에 대한 이해를 돕기 위해서는 IntelliJ에서 Root 프로젝트를 생성한 뒤 서브 모듈로 관리하기 방식이 있습니다. 이러한 구조는 각 모듈이 독립적으로 기능할 수 있어 반복적인 빌드를 피하고, 프로젝트 규모가 커질 때 관리를 용이하게 해줍니다.

또한, 빌드 도구로 Gradle이나 Maven을 사용하여 멀티모듈 설정을 쉽게 할 수 있으며, 각 모듈마다 필요한 종속성을 명확하게 정의할 수 있는 이점이 있습니다.

최종적으로, MSA 구성에서 각 서비스가 지속적으로 독립적인 개발과 배포가 이루어져야 할 경우에는 Kafka나 다른 메시지 큐를 통해 서비스 간의 커뮤니케이션을 관리하는 방식도 많이 사용됩니다. 이는 각 서비스가 독립적으로 유지되면서 데이터를 일관되게 동기화할 수 있도록 도와줍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

bamho님의 프로필 이미지

작성한 질문수

질문하기