用途
该技能面向遗留系统现代化改造场景,核心思路是采用边车(side-car)模式:不重写旧系统,而是冻结旧系统、从遗留数据中反向提取领域事件,并在其旁边构建基于事件建模的新功能。适用于需要在不破坏现有业务的前提下逐步引入新能力的团队。
主要能力
- 访谈阶段(关键且不可跳过):评估组织是否具备冻结遗留系统的意愿、遗留系统状态与文档情况、事件提取可行性、时间线与人员配置、风险容忍度与失败恢复策略。
- 冻结协议:明确遗留系统中不再变更的部分(如旧 UI、旧数据库模式、旧业务逻辑、旧 API)以及允许进行的操作(如维护、事件提取、在边车中构建新功能)。
- 事件提取:从遗留数据库反向工程领域事件,支持一次性历史提取、实时同步(数据库触发器或变更数据捕获 CDC)以及混合方式。
- 边车系统构建:在新系统中建立事件存储、处理器、读模型以及面向用户的 API 与 UI。
- Y 型阀门流量路由:逐步将用户从遗留系统迁移到新系统,支持按新功能或用户偏好进行路由。
- 新功能开发:在边车中使用事件建模模式开发新功能,无需修改遗留代码。
使用方式
技能以访谈为起点,要求确认五个维度:遗留系统状态与文档、组织冻结协议、事件提取可行性、时间线与人员配置、风险容忍度与失败恢复。访谈发现需记录到项目的 .trogonai/interviews/[project-name]/EVENTMODELING.md 文件中,并包含绿灯检查清单(冻结协议、提取方案验证、团队配置确认、风险缓解方案接受)。随后按工作流执行:分析遗留系统、定义冻结范围、从遗留数据提取领域事件、构建事件捕获管道、构建边车系统、处理用户流量迁移、在边车中开发新功能。
适用场景
- 拥有多年历史、难以修改的单体遗留系统。
- 需要在不中断现有业务的情况下引入新功能。
- 组织愿意冻结遗留系统并逐步迁移用户。
- 遗留数据可作为事件来源进行反向工程。
限制
- 若组织未达成冻结协议,边车模式不可行,项目可能失败。
- 事件提取的可行性取决于遗留系统是否支持直接查询、审计日志、CDC 或可修改钩子。
- 时间线与人员配置会影响提取与边车构建能否并行。
- 系统关键性决定验证严格程度与回滚策略的重要性。
- 具体收费、价格、平台支持等信息暂未提供。