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

tnd05106님의 프로필 이미지
tnd05106

작성한 질문수

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

데이터 동기화 문제 ②

질문 있습니다

작성

·

253

0

  1. order service1, order service 2 에 각각 db가 있는경우(MQ로 동기화)

  2. order service1, order service2 - MQ server - db
    2번 방법은 db는 한개

    1, 2의 경우를 설명해주셨는데 ,
    2번에 경우에도 특정 시점에서는 MQ server에서 db로 주문이 저장 안되서
    총 5개 저장했을 때 DB에 3개 저장되고 MQ server에 아직 2개가 있을 때 사용자를 검색했을 때 해당 사용자의 order이 3개일 수도 있지 않나요 ?

답변 2

1

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

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

IT, 전산 시스템에서 완벽한 솔루션은 없는 것 처럼 말씀하신 상황도 발생할 수 있는 가능성이라고 생각합니다. 강의에서는 MQ의 사용 용도 및 다중 서비스들 간의 데이터 동기화에 대한 방법 중 하나를 전달하려고 했었습니. Kafka MQ를 사용할 때 단일 Broker(서버)로 구성하는 경우 보다는 3대 이상 구성하여 사용하는 경우가 많기 때문에, 메시지의 전달을 어느정도 보장해 줄 수 있습니다. 실시간으로 전달될 상황이 아니어도, 메시지 전달을 해 줄 수 있습니다. 실시간 데이터 저장에 대한 부분은 일반적인 관계형 데이터베이스에서도 발생할 수 있는 이슈이며, 데이터베이스에 커넥션을 연결하여 작업을 처리하는 것 보다는, MQ에 비동기 방식으로 메시지는 보내고, 로직에서 다른 서비스를 처리할 수 있도록 구성할 수 있다는 점이 다른 점이라고 보시면 좋을 것 같습니다.

다른 의견 있으시면 글 남겨 주세요.

감사합니다.

0

tnd05106님의 프로필 이미지
tnd05106
질문자

아하 그런관점으로 봐야하군요! 감사합니다

tnd05106님의 프로필 이미지
tnd05106

작성한 질문수

질문하기