UserPortraitImage
및 Contract
이 PDF 파일 인 누적 값이 User
이라고 가정합시다. 전용 문서 기반 저장소에 파일을 저장하고 이벤트에서 프로세스 관련 데이터를 보유하기를 원합니다 (BLOB 데이터에 대한 링크 포함).BLOB 데이터를 저장하는 이벤트 소스 응용 프로그램에서 2 단계 커밋을 피하십시오
그러나 파일을 저장하고 새 이벤트를 저장할 때 2 단계 커밋을 방지하려면 어떻게해야합니까?
처음에는 문서를 저장 한 다음 이벤트를 저장합니다. 첫 번째 트랜잭션이 실패해도 문제가되지 않으면 명령이 실패합니다. 두 번째 트랜잭션이 실패하면 상점에 불량 파일이 생성 되더라도 상관 없습니다. 명령은 실패합니다. 롤백을 적용 할 수도 있습니다. 하지만 추가 문제가있을 수 있습니까?
다음 질문은 집계 및 이벤트를 디자인하는 방법입니다. 집계가 BLOB 저장소에 대한 참조 만 보유하고있는 경우 SignUp
명령이 호출 된 후 프로세스는 무엇입니까?
SignUpCommand
==> 문서를 저장 (UserPortraitImage
및 Contract
) ==> 지정된 BLOB 저장 참조 새로운 User
집계를 작성하고 보관?
BLOB 데이터가 다른 상점에 저장되었다는 것을 모으는 집계를 해치지 않는 더 나은 디자인이 있습니까? 누가 BLOB 데이터를 저장하고 집계에 대한 참조를 전달할 책임이 있습니까?
사가를 사용하는 경우 BLOB 데이터는 어디에서 보관해야합니까? 프로세스는 어떻게 생겼을까요? –