加载中...

事件溯源(Event Sourcing)是一种数据持久化模式:系统不直接存储对象的当前状态,而是把导致状态变化的每个事件按顺序追加到事件存储(Event Store)中,当前状态通过从头重放事件计算得出。该模式由 Martin Fowler、Greg Young 等人系统阐述和推广。
事件是不可变的事实记录(如订单已创建、商品已发货),只追加、不修改、不删除。为避免重放过慢,可周期性保存快照(Snapshot),恢复时从最近快照加增量事件重建。查询侧通常配合 CQRS 模式,把事件投影为便于读取的物化视图。
完整的审计与历史追溯;可在任意时间点重建状态;事件本身就是天然的集成消息,便于驱动下游系统;调试时可重放复现问题。
事件模式演化(版本升级)复杂;最终一致的读模型增加认知负担;不适合关系简单的增删改查场景。常见配套设施包括 EventStoreDB、Kafka 与 Axon Framework。

登录 后参与讨论
暂无讨论,来发表第一条评论吧