架构图与技术设计模板¶
目标:让项目在 90 秒内讲清主链路,在 10 分钟内讲清异常路径和 trade-off。
一、架构图最少要包含什么¶
- 用户入口
- 核心服务
- 存储层
- 缓存层
- 监控与日志
- 发布与回滚点
- 失败路径
二、推荐文档结构¶
Markdown
# 技术设计文档
## 1. 架构目标
- 延迟目标:
- 吞吐目标:
- 成本目标:
- 可用性目标:
## 2. 总体架构图
- 主链路图
- 失败路径图
- 发布拓扑图
## 3. 组件说明
| 组件 | 职责 | 输入/输出 | 风险 |
|------|------|-----------|------|
| | | | |
## 4. 核心时序
- 请求进入
- 核心处理
- 缓存命中/未命中
- 异常回退
## 5. 关键设计决策
| 决策 | 备选方案 | 最终方案 | 取舍 |
|------|----------|----------|------|
| | | | |
## 6. 失败路径
- 上游失败:
- 依赖失败:
- 资源耗尽:
- 回退策略:
## 7. 发布与回滚锚点
- 版本切换点:
- 灰度比例:
- 回滚条件:
三、Mermaid 起步模板¶
flowchart LR
U[用户/调用方] --> G[网关/入口]
G --> A[核心服务]
A --> C[缓存]
A --> S[存储/索引]
A --> M[模型/计算层]
A --> O[日志与监控]
M --> R[降级/回退策略] 四、不同交付线的讲解重点¶
AI 应用工程¶
- 检索、模型、工具、缓存如何串联
- 质量评测与护栏插在什么位置
AI 基础设施¶
- 批处理、路由、缓存、监控如何联动
- 资源瓶颈和回滚开关在哪里
数据与平台工程¶
- 流批链路、特征/索引更新、在线服务边界
- 数据质量校验和延迟监控在哪里
五、面试禁区¶
- 只有主链路,没有失败路径
- 只画组件,不讲数据流
- 能画图但解释不出为什么这么拆