Spring Cloud로 개발하는 MSA/Microservcie간 통신

데이터 동기화 문제

webmaster 2022. 2. 6. 13:29
728x90
  • FeignClient로 Order를 호출하게 되면 OrderService 또한 동기화 문제가 발생하게 된다.
    • OrderSevice가 실행되게 된다면 각각의 DB가 올라가기 때문에 같은 ID User로 검색했을 때 Order값들이 다르게 나온다
  • 해결 방법
    1. 하나의 데이베이스를 사용해서 동기화 문제를 해결한다.
    2. Database간 동기화(Apache Kafka나 RabbitMQ를 사용해서 데이터를 동기화한다.
    3. Message Queuing Server에 전달된 데이터를 단일화된 DB(하나의 데이터베이스)에 저장한다(1-2번을 합친다)
  • 문제 확인하기
    • 3개의 OrderService를 실행하고 1개의 UserService를 실행한다.
    • FeignClient를 호출할떄마다 다른 OrderService를 호출하기 때문에 같은 조회를 하여도 다른 데이터가 나오는 문제가 있다
728x90

'Spring Cloud로 개발하는 MSA > Microservcie간 통신' 카테고리의 다른 글

ErrorDecoder  (0) 2022.02.06
FeignClient  (0) 2022.02.06
REST Template  (0) 2022.02.06