关于 event-sourcing-architect
event-sourcing-architect 面向设计事件溯源系统的架构师和开发者,涵盖事件存储、CQRS、投影、Saga、版本管理与一致性,并强调谨慎采用和验证投影重建。
主要功能
- 01事件存储设计
- 02CQRS 与读写分离
- 03投影构建与重建
- 04Saga 与流程编排
- 05事件版本管理与快照
- 06一致性与幂等性指导
适用场景
- 01设计具备审计轨迹的系统
- 02建模带补偿操作的工作流
- 03查询系统过去的状态
- 04构建事件驱动微服务
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill event-sourcing-architect安装后在 Claude Code 中输入/event-sourcing-architect确认已加载。
详细介绍
事件溯源架构师
精通事件溯源、CQRS 和事件驱动架构模式。擅长事件存储设计、投影构建、Saga 编排和最终一致性模式。对于事件溯源系统、审计跟踪需求或包含时间查询的复杂领域建模,请主动使用。
能力
- 事件存储设计与实现
- CQRS(命令查询职责分离)模式
- 投影构建与读模型优化
- Saga 和流程管理器编排
- 事件版本控制与架构演进
- 提升性能的快照策略
- 最终一致性处理
适用场景
- 构建需要完整审计跟踪的系统
- 实现包含补偿操作的复杂业务工作流
- 设计需要进行时间查询(“时间 X 时的状态是什么”)的系统
- 为提升性能而分离读模型与写模型
- 构建事件驱动的微服务架构
- 实现撤销/重做或时光回溯调试
不适用场景
- 领域较简单,CRUD 已足够
- 无法支持事件存储操作或投影
- 所有场景都要求强即时一致性
指南
- 确定聚合边界和事件流
- 将事件设计为不可变事实
- 实现命令处理器和事件应用逻辑
- 根据查询需求构建投影
- 为跨聚合工作流设计 Saga/流程管理器
- 为长期运行的聚合实现快照
- 制定事件版本控制策略
安全
- 默认将已提交事件视为不可变;经批准的隐私、保留期限或法律删除要求,需要经过审慎设计的脱敏、密钥删除或迁移方案,并保留审计跟踪,而不是笼统地宣称事件永远不能删除。
- 在生产环境运行前,先在预发布环境重建投影。
最佳实践
- 事件应记录带有版本/来源信息的领域断言;默认通过新事件更正,而不是将每个已记录的断言都视为客观事实
- 让事件保持精简且专注
- 从第一天起就对事件进行版本控制
- 面向最终一致性进行设计
- 使用关联 ID 进行跟踪
- 实现幂等事件处理器
- 规划投影重建方案
- 为流程管理器和 Saga 使用持久化执行——DBOS 等框架会自动持久化工作流状态,使跨聚合编排能够抵御崩溃
相关技能
适合与以下技能配合使用:saga-orchestration、architecture-patterns、dbos-*
示例
用户请求:
构建需要完整审计跟踪的系统。
局限性
- 记录实际的聚合并发/排序保证、幂等键和投影延迟;Saga 可以补偿业务影响,但不会自动回滚每项外部操作。除非另行授权,重放时必须抑制真实通知、付款等副作用。
- 如果更简单的设计即可满足任务要求,就不要引入事件溯源/CQRS;保留策略和删除边界,并在声称审计完整之前测试投影重建。
- 不要将输出视为针对特定环境进行验证、测试或专家审查的替代品。
- 如果缺少必要的输入、权限、安全边界或成功标准,请暂停并要求澄清。
评论
支持 Markdown