mcpField
L
legacy-modernizer

legacy-modernizer

github.com/404kidwiz开发88 次安装
代码仓库

关于 legacy-modernizer

面向遗留系统现代化工作的技能,帮助团队在不中断业务的情况下逐步迁移,而非整体重写。内容涵盖流量切换、系统隔离和数据同步等迁移模式。

主要功能

  1. 01规划渐进式迁移路线
  2. 02应用 Strangler Fig 与抽象替换模式
  3. 03设计反腐层以隔离领域模型
  4. 04使用 CDC 同步迁移数据
  5. 05评估改造优先级并规划回退

适用场景

  1. 01将单体系统逐步拆分为微服务
  2. 02在新旧系统间保持数据同步
  3. 03替换遗留 API 并维持兼容
  4. 04管理迁移期间的双写与流量切换

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill legacy-modernizer

安装后在 Claude Code 中输入/legacy-modernizer确认已加载。

详细介绍

遗留系统现代化

目的

提供逐步实现遗留系统现代化的专业知识,无需彻底重写。专注于绞杀者模式、变更数据捕获(CDC)和防腐层等迁移模式,在保持业务连续性的同时安全地演进系统。

适用场景

  • 规划从单体架构迁移到微服务
  • 实施绞杀者模式
  • 设计新旧系统之间的防腐层
  • 设置变更数据捕获,以实现数据同步
  • 逐步实现遗留数据库现代化
  • 在保持兼容性的同时替换遗留 API
  • 评估遗留代码库,确定现代化优先级
  • 管理迁移期间的双写场景

快速入门

在以下情况下调用此技能:

  • 将遗留单体系统迁移到现代架构
  • 实施绞杀者模式或抽象分支模式
  • 设计防腐层
  • 设置 CDC,实现系统间的数据同步
  • 规划渐进式现代化路线图

请勿在以下情况下调用:

  • 全新微服务设计 → 使用 /microservices-architect
  • 不涉及迁移的一般重构 → 使用 /refactoring-specialist
  • 不涉及迁移的数据库优化 → 使用 /database-optimizer
  • 不涉及遗留系统的 API 设计 → 使用 /api-designer

决策框架

Migration Strategy?
├── Replace Incrementally
│   └── Strangler Fig: Route traffic to new service gradually
├── Abstract and Replace
│   └── Branch by Abstraction: Interface → implement new → switch
├── Data Sync Required
│   └── CDC with Debezium/similar for real-time sync
└── Protect New from Old
    └── Anti-Corruption Layer: Translate between domains

核心工作流

1. 实施绞杀者模式
  1. 确定要提取的有界上下文
  2. 在遗留系统前创建门面/代理
  3. 构建实现相同接口的新服务
  4. 将部分流量路由到新服务
  5. 逐步提高流量占比
  6. 完成迁移后停用遗留组件
2. 设置防腐层
  1. 为新系统定义清晰的领域模型
  2. 确定与遗留系统的集成点
  3. 在模型之间构建转换层
  4. 为遗留 API/数据实现适配器
  5. 添加转换失败监控
  6. 记录映射规则
3. CDC 数据迁移
  1. 设置 CDC 工具(Debezium、AWS DMS)
  2. 在遗留数据库上配置变更捕获
  3. 构建使用者,将变更应用到新系统
  4. 通过转换处理架构差异
  5. 实施验证与协调机制
  6. 规划切换和回退策略

最佳实践

  • 逐步迁移,避免一次性彻底重写
  • 在迁移期间保持功能对等
  • 使用功能标志控制流量路由
  • 在迁移期间实施全面监控
  • 在切换前保持遗留系统与新系统同步
  • 记录所有集成点和依赖关系

反模式

反模式问题正确做法
一次性彻底重写风险高、周期长渐进式迁移
没有防腐层新系统受到遗留系统的污染使用 ACL 隔离
不使用 CDC 进行双写数据不一致使用 CDC 进行同步
一次性迁移所有内容复杂度过高按业务价值确定优先级
没有回滚计划迁移失败时无法脱身始终规划回退方案

评论

支持 Markdown