知识卡片
事件不变且以追加方式记录形成事件日志
内容
事件溯源的首要原则是「事件永远是不变的」,因此对事件的持久化非常简单:无论发生什么事件,持久化时都是追加操作,好似在GitHub每次提交都增加一条记录。理解事件溯源需把握两个关键原则:①聚合的每次状态变化都是一个事件的发生;②事件是不变的,以追加方式记录事件,形成事件日志。由于事件溯源运用在限界上下文边界内,它操作的事件属于领域设计模型的一部分,准确说应称为领域事件,以区别于发布/订阅模式操作的应用事件。发散:不可变+追加带来两个工程红利——无需行锁、天然可审计;代价是查询能力弱(见后卡)。
参考来源
- 位置:《解构领域驱动设计》附录B B.2(源文件:_epub-src/OEBPS/035.xhtml)
- 结论依据:原文给出事件不变、追加记录两原则,并区分领域事件与应用事件。
- 原始内容:事件溯源模式的首要原则是事件永远是不变的……以追加方式记录事件,形成事件日志……应称其为领域事件,以区分……应用事件。