SuperAPI AI 工具集

cqrs-event-sourcing

通用与其它

查看项目

更新于 10-16 01:37

技能介绍

用途:面向需要完整审计追踪、合规要求、时间点查询(查看时间 T 的状态)、读写模式差异显著或事件驱动架构的系统,提供 CQRS 与事件溯源实现指导。适用于多读模型投影、协作系统冲突解决,以及需要理解“发生了什么”的场景。

主要能力:分离命令(写)与查询(读)——命令表达意图(如 CreateOrder、UpdatePrice)、可被校验拒绝、返回成功或失败而不返回数据;查询只读、可缓存与优化、可针对不同需求使用多个模型。以不可变事件作为事实来源,存储“发生了什么”(如追加 UserEmailChanged 事件)而非当前状态,从而获得完整历史、时间查询与审计轨迹。接受读写模型间最终一致性;结合领域驱动设计,用聚合维护业务不变量、事件表示领域事实、命令表达领域操作、限界上下文界定一致性边界。

使用方式:工作流为先判断是否适合(高审计、时间查询或高扩展需求),再设计表达用户意图的命令,定义以过去时命名的事件,实现作为一致性边界的聚合,创建针对具体查询优化的投影,并处理跨限界上下文的最终一致性。可按任务查阅参考文件:CQRS 实现模式见 skills/cqrs-event-sourcing/references/cqrs-patterns.md,事件溯源与快照见 skills/cqrs-event-sourcing/references/event-sourcing.md,EventStoreDB 与 Axon Framework 见 skills/cqrs-event-sourcing/references/event-store-tech.md,一致性模式见 skills/cqrs-event-sourcing/references/consistency-patterns.md,最佳实践清单见 skills/cqrs-event-sourcing/references/best-practices.md。

相关工具与资源:EventStoreDB、Axon Framework、Marten、Eventuous;模式包括 Event Sourcing、CQRS、Process Manager、Saga、Snapshot。

常见错误或限制:简单 CRUD 应用使用 CQRS 属于过度设计;聚合过大跨越多个一致性边界;发布后修改或删除事件;聚合处理前跳过命令校验;事件处理器缺少幂等性;没有事件模式演进的版本策略;聚合间紧耦合(应仅用 ID 引用)。具体定价、平台与效果资料暂未提供。