设计组件
领域事件定义(DomainEvent)
领域模型支持领域事件处理(Domain)
事件池(EventRepository-> Persistence)
事件分发(EventDispatcher)
事件处理器 ->领域模型(Event Processor -> Domain)
事件同步处理(等待超时控制--如何在超时时取消事件防止超时后事件被处理)、异步处理(EventSynchrouse、Asynchrouse Handling)
Event Processing
REPLAY
REBUILD
REVERSE ->需要记录事件发生时被事件更新的数据的状态,以支持事件reverse
事件与外部系统交互
更新外部系统 ->消息统一发送给外部系统Gateway,由Gateway来处理与外部系统的交互
查询外部系统状态 ->由于支持事件的replay等,所以对于事件发生时查询到的外部系统的状态需要保存下来才能支持事件的replay等操作
复杂事件处理:
总体示意图: