CQRS에서는 버그를 쉽게 수정할 수 있다고 말하면 이벤트를 재배치 한 다음 재생하면됩니다. 그러나 이벤트 중 하나만 수행하면 이벤트를 재생하는 경우 해당 항목이 두 번 배송 될 경우 제어 시스템에없는 외부 시스템으로 인해 고객에게 "항목을 배송"해야하는 경우가 있습니다. 어떻게 해결합니까?
cqrs 아키텍처에서 어떻게 새로운 집계 루트를 만들어야합니까? 이 예에서는 첫 번째 AR1에 대한 참조를 보유하는 새로운 집계 루트 AR2를 작성하려고합니다. AR1 방법을 시작점으로 사용하여 AR2를 만들고 있습니다. 지금까지 몇 가지 옵션이 있습니다. AR1의 내부 메소드는 리포지토리에 액세스하는 도메인 서비스를 사용 하여이 객체를 createAr2RootOpt1호출 new AR2()하여 dbmedia에 ly 저장할 수 있습니다. …
DDD 및 관련 과목의 방법을 배우려고합니다. 나는 "은행 (bank)"을 구현하기위한 단순한 제한적 맥락에 대한 아이디어를 생각 해냈다. 계좌가 있고, 자금이 입금, 인출 및 송금 될 수있다. 변경 기록을 유지하는 것도 중요합니다. 계정 엔티티를 식별 했으며 이벤트 소싱을 통해 변경 사항을 추적하는 것이 좋습니다. 다른 엔터티 또는 값 개체는 문제와 관련이 …
나는 이벤트 소싱에 대해 읽고 있으며 글이 매우 드물거나 군사 등급 감사가 필요한 이국적인 상황에서만 의미가 있는지 스스로에게 물어볼 수는 없습니다. 사용량이 많은 예외가 아닌 시스템은 하루에 수백에서 수천 번의 쓰기 작업을 수행하여 연간 운영 횟수가 백만 또는 2 회 (따라서 이벤트)로 변환 될 수 있습니다. 기존 스토리지에서 일직선으로 읽은 …
OOP 커뮤니티에는 클래스 생성자가 객체를 부분적으로 또는 완전히 초기화되지 않은 상태로 두지 말아야한다는 광범위한 동의가있는 것으로 보입니다. "초기화"는 무엇을 의미합니까? 대략적으로 말하자면 새로 생성 된 객체를 모든 클래스 불변 값이 유지되는 상태로 만드는 원자 프로세스입니다. 객체에 대해 가장 먼저 발생해야하며 (객체 당 한 번만 실행해야 함) 초기화되지 않은 객체를 잡을 …