강의

멘토링

로드맵

Inflearn brand logo image

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

작성자 없음

작성자 정보가 삭제된 글입니다.

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

Transactional Outbox 모듈 구현

MSA 에서 Monolithic Architecture로 마이그레이션

해결된 질문

작성

·

78

0

안녕하세요 강사님 ! 강의 잘듣고 있습니다.

강의를 거의 다들었는데, Monolithic Architecture로 마이그레이션 해보고 싶다는 생각이 들어 해보려고 합니다.
각각의 모듈을 하나의 어플리케이션의 패키지로 만들기만 하면 될까요 ? 어느 부분을 신경쓰면 좋을지 간단하게라도 조언해주시면 정말 감사드리겠습니다 .!!

이 강의를 듣기를 진심으로 잘했다는 생각이 듭니다. 좋은 강의 해주셔서 감사드리고 다음 강의도 기대하겠습니다 !!

답변 2

1

쿠케님의 프로필 이미지
쿠케
지식공유자

태우님, 안녕하세요!

모놀리틱으로 변경한다면, 말씀하신대로 분리되어있는 각 마이크로서비스 모듈을 패키지 분리하면 충분할 것 같네요!

common 모듈은 지금처럼 분리해둬도 딱히 문제는 없습니다.

필요한 의존성들이 단일 애플리케이션에서 실행된다는 점만 인지해주시면 될 것 같습니다.

강의 잘 수강해주셔서 감사합니다!

0

안녕하세요, 인프런 AI 인턴입니다. 김태우님.

강의를 수강하며 MSA 아키텍처에서 Monolithic 아키텍처로의 마이그레이션을 고려하고 계시는군요. 먼저 강의를 잘 따라오신 점 축하드리고, 긍정적인 피드백 정말 감사합니다!

Monolithic 아키텍처로 마이그레이션 시 고려할 사항

  1. 모듈 통합:

    • 각 모듈을 하나의 애플리케이션 내의 패키지로 통합합니다. 이를 통해 각 모듈이 독립적으로 존재하던 기능들을 한 프로젝트 내로 이전하게 됩니다.
  2. 공유 컴포넌트 관리:

    • 기존의 MSA에서는 각 마이크로서비스가 독립적인 데이터베이스 및 의존성을 유지했을 수 있습니다. Monolithic 환경에서는 이러한 공유 컴포넌트를 어떻게 관리할지 전략이 필요합니다.
  3. 데이터베이스 통합:

    • 데이터베이스에 대한 접근이 다수의 모듈에서 이루어진다면, 하나의 통일된 데이터베이스로 통합하여 관리해야 합니다. 데이터 모델의 중복성을 해결하고 일관성을 유지하는 것이 중요합니다.
  4. 공통 기능 모듈화:

    • 동일한 기능이나 로직이 여러 모듈에서 사용된다면 이를 공통 모듈로 추출할 수 있습니다. 이를 통해 코드의 중복을 줄이고 유지보수를 용이하게 할 수 있습니다.
  5. 성능 및 확장성 고려:

    • Monolithic 아키텍처는 기본적으로 하나의 애플리케이션 덩어리를 의미하므로, 성능이나 확장성 측면에서 제한이 발생할 수 있습니다. 따라서, 성능 모니터링 및 최적화 방법도 계획해야 합니다.

관련해서 유사한 주제를 다룬 토론이나 게시글을 참고하실 수 있습니다. 아래의 링크에서 마이크로서비스와 모놀리식 아키텍처에 대한 상세한 비교를 보실 수 있습니다:
- 마이크로서비스에서 모놀리식 아키텍처로 전환하는 방법

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

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기