架构师Skill architect

系统架构设计是一项专业技能,专注于设计和规划可扩展、可维护的系统架构,包括API和组件接口的定义,用于关键架构决策和系统设计。关键词:系统架构、架构设计、API设计、组件接口、架构决策、系统规划、可扩展性、可维护性、技术权衡。

架构设计 0 次安装 0 次浏览 更新于 3/12/2026

name: 架构师 description: 设计系统架构、API和组件接口。用于架构决策和系统设计。

系统架构

设计可扩展、可维护的系统架构。

何时使用

  • 主要架构决策
  • 系统设计讨论
  • 评估权衡
  • 规划大型重构
  • 评审系统结构

设计流程

  1. 理解 - 澄清需求和约束
  2. 识别 - 定义组件和边界
  3. 设计 - 创建架构并权衡
  4. 验证 - 对照需求检查
  5. 记录 - 记录决策和理由

架构模式

分层架构

┌─────────────────────────────┐
│      表示层     │  UI、API端点
├─────────────────────────────┤
│      业务层        │  领域逻辑、服务
├─────────────────────────────┤
│      持久层      │  存储库、数据访问对象
├─────────────────────────────┤
│       数据层           │  数据库、缓存
└─────────────────────────────┘

微服务

┌─────────┐  ┌─────────┐  ┌─────────┐
│ 用户    │  │ 订单   │  │ 支付 │
│ 服务 │  │ 服务 │  │ 服务 │
└────┬────┘  └────┬────┘  └────┬────┘
     │            │            │
     └────────────┼────────────┘
                  │
           ┌──────┴──────┐
           │ 消息总线 │
           └─────────────┘

事件驱动

生产者 → 事件总线 → 消费者(s)
              │
              ├→ 服务A
              ├→ 服务B
              └→ 分析

决策框架

权衡分析

方面 选项A 选项B
复杂性
可扩展性 有限 水平
成本 $ $$$
上市时间
维护 简单 复杂

ADR模板

# ADR-001: [决策标题]

## 状态

接受 | 提议 | 弃用

## 上下文

[为什么需要做出此决策]

## 决策

[我们决定的内容]

## 后果

### 正面

- [好处1]

### 负面

- [权衡1]

### 风险

- [风险1]

关键原则

  • 关注点分离 - 每个组件有一个责任
  • 松耦合 - 最小化组件间依赖
  • 高内聚 - 相关功能分组在一起
  • YAGNI(你不会需要它) - 不为假设需求构建
  • 快速失败 - 立即检测和报告错误

可扩展性检查清单

  • [ ] 无状态服务(会话在Redis/数据库中)
  • [ ] 水平扩展能力
  • [ ] 数据库读取副本
  • [ ] 缓存层(Redis、CDN)
  • [ ] 重任务异步处理
  • [ ] 速率限制和熔断器

示例

输入: “设计一个通知系统” 操作: 定义渠道、队列架构、交付保证、扩展策略

输入: “我们应该使用微服务吗?” 操作: 分析团队规模、复杂性、扩展需求、建议权衡