저는 개발자가 도메인 기반 디자인에서 응용 프로그램을 설계/설계하는 많은 공통적 인 방법을 연구했습니다 (여전히 개념 전체를 이해하려고 노력하고 있음). 내가 본 몇 가지 예제에는 이벤트 수집기를 통한 이벤트 사용이 포함되어 있습니다. 필자는 응용 프로그램의 다른 요소/도메인이 실제로 분리되어 있기 때문에 개념이 마음에 들었습니다.롤백으로 이벤트 수집기 오류 처리
내가 가진 걱정은 다음과 같습니다. 오류가 발생했을 때 어떻게 작업을 롤백합니까? 예를 들어
:
내가 데이터베이스에 주문을 저장하고 또한 CMS에 PDF로 순서의 복사본을 저장하는 주문 응용 프로그램을 말한다. 응용 프로그램은 새 주문이 만들어지고이 이벤트를 구독하는 pdf 서비스에서 pdf를 저장하는 이벤트를 시작합니다. 한편 주문 변경 사항을 데이터베이스에 적용하면 예외가 발생합니다. 문제는 pdf가 저장되었지만 일치하는 데이터베이스 레코드가 아닌 것입니다.이전에 처리 한 이벤트를 캐시하고 "실행 취소"작업을 캐시에서 찾는 새로운 오류 이벤트를 발생시켜야합니까? 이것을 위해 명령 패턴과 같은 것을 사용 하시겠습니까?
또는 이벤트 수집기가이 패턴에 적합하지 않습니다.
나는 어쩌면 이벤트는 이메일 및 로깅 덜 "미션 크리티컬"항목에 사용되어야한다고 생각하기 시작하고
편집.
초기 생각은 이벤트 수집기 패턴을 사용하여 종속성을 제한하는 것이 었습니다.
메모리 내 이벤트도 사용할 수 있습니다. Udi Dahan Domain Events Salvation을 살펴보십시오. – JefClaes