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

Inflearn Community Q&A

gg12415's profile image
gg12415

asked

Microservices Application (MSA) Developed with Spring Cloud

SOA vs. MSA

안녕하세요! MSA에 대해서

Written on

·

333

1

안녕하세요!

 

궁금한게 있습니다.

 

저희회사에서는 프로젝트가 멀티모듈로 되어있습니다.

그리고 CMS(운영관리 모듈), API, COMMENT 모듈 이렇게 3개의 애플리케이션 모듈을 사내 도커레지스트리에 도커 이미지로 올리고 AWS에 각각 3개의 모듈을 띄우는데요!

 

이게 음.. 데이터베이스는 한개로 씁니다.

그러니까 각 3개의 데이터베이스가 따로 한개씩 있는 것이아닌  마스터 하나에 슬래이브 1개의 레플리카로 구성되어있습니다.

 

이것또한 MSA라고 할수있을까요? 신입이라 아직 정확하게는 모르겠지만 저는 DB도 각 애플리케이션 마다있어야한다고 보고 그게 MSA라고 생각하고 있거든요.!

 

선생님의 의견이 궁금합니다! 감사합니다.

spring-bootJPAarchitecturespring-cloudmsaKafka

Answer 1

1

kenneth님의 프로필 이미지
kenneth
Instructor

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

MSA는 각각 분리 된 서비스에 반드시 데이터 스토리지(DB)가 별도로 존재해야 하는 것은 아닙니다. 서비스의 구성과 분리에 따라서 데이터 스토리지를 하나의 공통 DB를 사용할 수도 있고, 분리하여 각각 저장할 수도 있습니다. 다만, 분리하여 저장 시에는 데이터의 정합성이나 중복 및 롤백에 대한 처리를 어떻게 처리할 지 고려해야 하며, 공통 DB를 사용할 경우에는 종속성에 대한 문제도 고려해 보시는게 좋습니다. 이는 마이크로서비스를 어떻게 설계하고 운영할 지에 따라 달라지기 때문에, MSA로 전환할 때 기존 DB의 분석 및 도메인을 어떻게 처리할 지 결정하는것에 따라 달라지게 됩니다.

감사합니다. 

gg12415's profile image
gg12415

asked

Ask a question