2017-11-25 8 views

答えて

2

イベントに2つの集計がある可能性はありますか?

はい、いいえ両方とも。

はい、イベントには複数の「集約」への参照が含まれることがよくあります。あなたがいないが正常に表示さん

UserPostCommentAdded: { 
    userId: 001ae072-1834-4b73-90af-666ec0edc04a 
    userPostId: 6c01a87c-e64f-466a-9f1a-b6af28049248 
} 

は、自分の状態を更新するために、同じイベントを使用する2つの異なる集合体です。つまり、UserPostの関係はUserPostの責任であるか、Userの責任であるが、の両方ではではない。

通常、実装では1つのaggregateIdフィールドが表示されますが、いいえ?

場合によっては表示されることがあります。非常に専門的なことをしない限り、「集約」はドメインの言語の一部にはならないので、実際にはイベントデータに意味をなさない。あなたの周りにルーティングするために、あなたのイベントをドメインに依存しない配管を使用していた場合は、リフトメタデータにあなたのドメインエンティティの1の識別子...例えば

UserPostCommentAdded: { 
    data: { 
     userId: 001ae072-1834-4b73-90af-666ec0edc04a 
     userPostId: 6c01a87c-e64f-466a-9f1a-b6af28049248 
    } 
    metadata: { 
     aggregateId: 6c01a87c-e64f-466a-9f1a-b6af28049248 
    } 
} 

は、あなたがこのような何かを行う場合があります。 この意味での場合、メタデータにはaggregateIdが1つのみ存在し、が最初にイベントを書き込んだのはであることがわかります。

+0

普段私は実装では単一の 'aggregateId'フィールドを参照しています、いいえ? – WHITECOLOR

関連する問題