知识卡片
投射连接读写
内容
投射把事件流计算成当前状态、报表或查询视图,是事件溯源与CQRS之间的桥。同步投射简单但耦合写入,异步投射可扩展但要接受最终一致。关联:[[CQRS保护写模型]]
参考来源
- 位置:《复杂软件设计之道》第6章《事件溯源》"6.6 投射模式"一节(源文件:_chapter_text/ch06.txt)
- 结论依据:原文明确"投射模式……是将事件流投射成状态,从事件流中得出当前状态……这种方法是CQRS的实现基础",并区分同步投射("与写入事件流处于相同的事务中……降低了操作复杂性")与异步投射("必须处理投影存储的最终数据一致性……可以根据需要进行独立缩放、重放和监视")两种更新方式。
- 原始内容:投射模式是事件溯源中使用的核心模式之一……它是将事件流投射成状态,从事件流中得出当前状态……这种方法是CQRS的实现基础……同步:这会与写入事件流处于相同的事务中……它降低了操作复杂性……异步:将事件写入事件存储后,事件会传递到投影系统……由于更新是异步的,因此不得不处理投影存储的最终数据一致性以及交付保证。