강의

멘토링

커뮤니티

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

edu5님의 프로필 이미지
edu5

작성한 질문수

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

관리자 도메인이 존재 할때의 서비스 구조

작성

·

560

0

안녕하세요. 강의 잘 봤습니다. 

혹시 관리자 도메인이 존재할 시에는 어떻게 구조가 나눠지는지  참고 할 사례가 있을가요?

일반적으로 클라이언트에서 구매가 이루어진다면 상품에 대한 소비(클라이언트)와

구성을 담당하는 도메인(관리자 도메인)이 있을건대 이럴때는 어떤게 분리 되는지 궁금합니다.

클라이언트에서 접근하는 상품 영역과 관리자에서 접근하는 상품 영역은

하나의 상품 서비스 서버로 구성하는지, 분리해서 별도의 서비스 봐야되는지 궁금합니다.

실제 서비스에 녹이고 있는대 이부분을 적용하는 게 가장 어렵내요.

소비에서의 서비스 트래픽과 구성에서의 서비스 트래픽이 다르다 보니 

서버의 구성을 잡는게 고민되내요 

혹시 참고할 만한 사례가 있다면 부탁 드립니다.

답변 1

0

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

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

MSA로 구성하실 때, 서비스의 분리는 가장 고민되는 부분중에 하나입니다. 서비스 분리는 단순 도메인에서 사용되는 트랜잭션의 단위 또는 데이터가 저장되는 엔티티의 단위, 사용자 또는 관리자가 관리하는 데이터의 분리 등 어려 부분을 고민하시게 될거라 생각합니다. 

말씀하신 내용처럼 사용자 측의 상품 관리와 관리자 측의 상품 관리는 하나의 영역으로 보시고, 사용자가 사용하는 (노출되는) 정보를 제어하거나, 사용자와 관리자가 같은 상품 엔티티를 사용하면서 관리자에 추가로 사용되는 정보를 새로운 엔티티로 추가하여 사용하는 방법도 있을 거 같습니다. 상품 데이터가 동일 정보라 하여도, 사용자와 관리자가 각각 정보를 저장하여 사용하는 상황이라면, 트랜잭션 및 데이터 동기화에 대한 부분을 반드시 고려해야 할 것 같습니다. 특히, 데이터의 롤백(취소) 처리를 위한 보상 트랜잭션이나, 트랜잭션에 대한 히스토리를 관리하기 위한 메커니즘도 필요합니다. 

아래 글도 한번 읽어 보시기 바랍니다. 

https://ironcladapp.com/journal/contracts/ecommerce-contracts/

감사합니다. 

edu5님의 프로필 이미지
edu5

작성한 질문수

질문하기