질문을 위해서, 내가 2 개의 마이크로 서비스를 가지고 있다고 가정 해 봅시다. 마이크로 서비스 및 경계 문맥
나는 각 microservice이 밀접하게 결합되지 않아야 함을 알고 그것 자체 데이터베이스의이 있어야 회계
- ID 관리
- .
계정에 인보이스가 있고 각 인보이스에 발급 에이전트가 있다고 가정 해 보겠습니다. 계정에서 대행자도 ID 마이크로 서비스의 사용자로 존재합니다.
ID 관리 (사용자)의 데이터를 회계 (상담원)에 복사해야하며 해당 경계 컨텍스트 (이름 및 성)에 필요한 데이터 만 복사해야하므로 송장에 적절한
issuingAgentId
.데이터를 일관성있게 유지하고 컨텍스트간에 공유하는 올바른 방법입니까? 사용자가 ID 마이크로 서비스에서 생성 될 때마다 이벤트 "UserCreated"가 게시되고이 이벤트에 관심이있는 회계 또는 기타 서비스는 해당 에이전트를 추가하여 수신하고 처리해야합니까? 사용자 정보를 업데이트하는 경우에도 마찬가지입니다.
왜 메모리가 필요합니까?UI 서비스를 말할 때, 예를 들어 계정 서비스는 AgentId 만 가질 수 있지만 에이전트 ID의 성과 이름을 구성하는 UI 서비스 책임은 무엇입니까? – Robert
메모리에있을 필요는 없으며 필요한 경우 지속될 수 있습니다. UI보기에 대해서만 별도의 서비스를 제공함으로써 모든 뷰에 필요한 데이터를 집계하기 위해 모든 책임을 UI 뷰에 전달합니다. 단지 하나의 옵션 :) – tomliversidge
실제로 아주 좋은 생각입니다. 나는 컨텍스트 내에서 해당 데이터가없고 집계에 UI 서비스를 사용하는 경우 Invoice 서비스가 AgentId가 유효하다는 것을 어떻게 알 수 있을지 염려했다. – Robert