| 分类 | 考虑因素 | 推荐维度 |
|---|---|---|
| 前端框架 | 交互复杂度、SEO需求、团队经验 | React/Vue/Angular/Svelte |
| 后端框架 | 并发量、实时性、生态成熟度 | Spring/FastAPI/Express/Django |
| 数据库 | 数据模型、读写比例、一致性要求 | PostgreSQL/MySQL/MongoDB/Redis |
| 部署运维 | 规模、预算、团队运维能力 | Docker/K8S/Serverless/VPS |
| 缓存消息 | 性能要求、解耦需求 | Redis/RabbitMQ/Kafka |
对每个候选技术:
⚠️ 重点:技术选型必须输出「反选论证」,只给"首选+理由"视为不完整;反选论证须说明「为何不选 B」,而非仅罗列「为何选 A」。
推荐方案确定后,必须完成以下验证才能进入决策记录:
如某项无法验证,必须在推荐中标注"未验证项"和风险评估,不得跳过。
选型完成后记录决策到项目记忆:
## Decision Record: [技术选型名称]
**日期**: [YYYY-MM-DD]
**问题**: [需要解决的技术问题]
### 选项分析
| 选项 | 优势 | 劣势 | 适用场景 |
| ------- | ---- | ---- | -------- |
| [选项A] | ... | ... | ... |
| [选项B] | ... | ... | ... |
### 决策
**选择**: [最终选项]
**理由**: [核心原因]
**Trade-offs**: [接受的代价]
### 影响范围
- [影响的模块/项目]
- [需要学习的成本]
### 撤销条件
[什么情况下重新评估]
提示用户:使用 project-memory-management 将此决策记录到项目记忆中。
## 技术选型报告
**项目类型**:[类型]
**团队规模**:[规模]
**核心需求**:[需求摘要]
## 推荐方案
### 首选方案
| 层级 | 推荐技术 | 选型理由 |
|------|---------|---------|
| 前端 | [技术] | [理由] |
| 后端 | [技术] | [理由] |
| 数据库 | [技术] | [理由] |
| 部署 | [技术] | [理由] |
### 备选方案
[简要说明备选方案及适用情况]
## 详细对比
### [技术A] vs [技术B]
| 维度 | [技术A] | [技术B] |
|------|---------|---------|
| 学习成本 | [高/中/低] | [高/中/低] |
| 社区活跃度 | [高/中/低] | [高/中/低] |
| 性能 | [优/良/一般] | [优/良/一般] |
| 招聘难度 | [易/中/难] | [易/中/难] |
## 风险评估
| 风险 | 概率 | 影响 | 缓解措施 |
|------|------|------|---------|
| [风险1] | [高/中/低] | [高/中/低] | [措施] |
## 实施建议
1. [阶段1:MVP技术栈]
2. [阶段2:扩展和优化]
3. [阶段3:长期演进]
| 步骤 | 失败条件 | 回退目标 | 最大重试 | 不可恢复时升级路径 |
|---|---|---|---|---|
| 第一步:需求分析 | 项目需求过于宽泛,无法识别关键约束 | 列出常见约束清单,要求用户勾选 | 2 | 输出"需求澄清问卷",等待用户补充 |
| 第二步:技术分类推荐 | 团队技术背景与推荐方向严重不匹配 | 优先推荐团队熟悉的技术栈,标注学习成本 | 1 | 输出两套方案(团队熟悉 vs 技术先进),由用户权衡 |
| 第三步:方案对比 | 候选技术缺乏量化数据 | 标注"数据待验证",提供定性对比 | 2 | 建议POC验证后补充量化数据 |
| 第四步:给出推荐 | 首选与备选方案trade-off接近,难以抉择 | 输出决策矩阵,由用户最终决策 | 1 | 建议小范围POC验证后再决策 |
| 第五步:决策记录 | 项目记忆系统不可用 | 输出Decision Record到本地文件 | 1 | 标注"决策未沉淀",提示用户手动保存 |
当项目涉及 PHP+MySQL CMS 时,以下矩阵为必查依据:
| CMS | 最低版本 | 推荐版本 | 不兼容提示 |
|---|---|---|---|
| EmpireCMS 7.5 | 7.4 | 8.2 | 需 PHP 8 兼容补丁 |
| WordPress 6.x | 7.4 | 8.2 | 部分老插件不兼容 8.3+ |
| ThinkPHP 6 | 7.4 | 8.2 | |
| ThinkPHP 8 | 8.0 | 8.2 | |
| Laravel 9 | 8.0 | 8.1 | |
| Laravel 10 | 8.1 | 8.2 | |
| Laravel 11 | 8.2 | 8.3 | |
| CodeIgniter 4 | 7.4 | 8.2 | |
| DedeCMS v5.7 | 5.6 | 7.4 | 不支持 PHP 8 |
| Hyperf | 8.0 | 8.2 | 跟随 Swoole 版本 |
选型原则:CMS 要求优先 → 用户指定 → 默认 8.2。详见 cms-development.md。
software-project.md 总控流程,作为架构决策记录和交付物的一部分frontend-design 输出页面和组件落地规范api-design 设计接口规范cms-development.md 的 PHP 版本推荐和 CMS 探测mysql-database.mdcode-generation 生成项目脚手架doc-generation 生成技术决策文档