2012-07-24 2 views
3

도메인 모델을 디자인 중이지만 잘되지 않는 것이 있습니다.도메인 기반 디자인 및 집계 참조

주 집계부터 시작합니다. 여기에는 다른 집계에 대한 참조가 있으며 다른 집계는 더 많은 집계를 참조합니다. 주 집계에서 시작하여 홀 도메인 모델을 이동할 수 있습니다.

내가보기에 문제는 내가 메모리에 모든 집계 인스턴스를 보유한다는 것입니다.

좋은 디자인입니까? 나는 게으른 로딩으로 메모리 문제를 해결할 수 있지만, 나는 더 깊은 문제가 있다고 생각한다.

집계 참조와 관련하여 다른 질문이 있습니다. 다른 집계에 대한 참조를 느리게로드해야합니까? 만약 그렇다면 나는 그들의 저장소를 거의 사용하지 않을 것이다. 그 확인은?

답변

4

집계 루트 (AR) 사이를 직접 참조하면 지연로드로 해결할 수없는 문제가 발생할 수 있습니다. 또한 연결된 모든 AR을 동일한 데이터베이스에 저장해야하므로 처음에는 AR의 기본 목적 인 불변량을 추론하고 적용하기가 더 어려워집니다. AR 간의 직접적인 참조를 제한하거나 제거하는 것이 좋습니다. 집합 디자인에 대해 배울 수있는 훌륭한 자료는 series of articles, Vaughn Vernon입니다. 기본 개념은 비즈니스 제약 조건을 적용하고 루트 엔티티 주위의 경계를 위조하여 기능을 염두에두고 AR을 기울여 초점을 맞추는 것입니다. AR이 작업을 수행하기 위해 다른 AR로부터의 데이터를 필요로하는 경우,이 데이터는 저장소를 통해 애플리케이션 서비스에 의해 제공 될 수 있습니다. 또한 참조가 UI 요구 사항을 충족하는 데 필요한 경우에만 read-model pattern을 사용하는 것이 좋습니다.

관련 문제