技术架构文档

帮助你设计和记录系统的技术架构,从高级系统概述到详细的组件设计

技术架构文档

架构文档模板概览

高质量的技术架构文档是系统设计和开发的基础,帮助团队理解系统结构和关键设计决策

这些模板特别适合架构师、技术负责人和高级开发人员使用,确保你的技术决策得到清晰记录,便于团队理解系统的设计意图和关键构件

系统架构概述

全面的系统架构概述文档,描述总体设计、关键组件、数据流和系统边界

系统设计 架构决策 技术栈 组件关系
# 系统架构概述生成模板

## 前提条件
- 系统名称: [系统名称]
- 系统类型: [Web应用/移动应用/分布式系统/微服务等]
- 核心业务目标: [系统要解决的主要业务问题]
- 技术栈要求: [预期使用的技术栈或限制条件]

## 需求描述要点
- 架构愿景: 简明描述架构的总体目标和设计原则
- 系统上下文 
  * 系统边界和外部依赖
  * 与其他系统的交互
  * 关键利益相关者和使用者
- 架构概览:
  * 高层架构图(逻辑视图)
  * 主要子系统和组件
  * 关键接口和通信方式
- 关键质量属性
  * 性能要求和指标
  * 安全性考虑
  * 可伸缩性设计
  * 可用性和容错设计
- 关键架构决策:
  * 技术选择和理?
  * 设计权衡考量
  * 已拒绝的替代方案
- 部署架构:
  * 部署模型和环境
  * 基础设施需求
  * 网络拓扑

## 输出格式
- 格式: 结构化的Markdown文档
- 图表: 包含架构图(推荐C4模型或UML组件图)
- 术语表 关键技术术语的定义

## 其他要求
- 避免过度细节,保持高层次的系统视图
- 重点关注架构驱动因素和约束
- 清晰说明架构决策的理?
- 标注架构中的风险点和缓解策略
                        

API 接口设计

详细的API接口设计文档,描述REST或GraphQL API的端点、请求/响应格式和认证机制

API设计 接口规范 数据格式 认证
# API 接口设计文档生成模板

## 前提条件
- API 名称: [API名称]
- API 类型: [RESTful/GraphQL/RPC/SOAP等]
- 业务领域: [API所服务的业务领域]
- 目标用户: [API的使用者,如移动端/前端/其他服务等]

## 需求描述要点
- API 概述:
  * 目的和功能范围
  * 设计原则和约束
  * 版本控制策略
- 基础信息:
  * 基本URL结构
  * 通用请求/响应格式
  * 状态码使用规范
  * 错误处理机制
- 认证与安全
  * 认证机制(OAuth/JWT/API Key等)
  * 授权级别和权限控制
  * 速率限制策略
  * 安全最佳实践
- 端点详情(RESTful)或类图GraphQL):
  * 完整的端点列表和分组
  * 每个端点的HTTP方法
  * URL参数和查询参数
  * 请求体格式和字段定义
  * 响应格式和字段定义
  * 状态码和错误响应
  * 示例请求和响应
- 数据模型:
  * 关键数据实体的定义
  * 字段类型和约束
  * 实体间的关系

## 输出格式
- 格式: 结构化的技术文档
- 示例: 提供真实的API调用示例,包括请求和响应
- 表格: 使用表格展示端点列表和参数

## 其他要求
- 遵循行业标准(如OpenAPI规范)
- 包含分页、排序、过滤的处理方式
- 考虑跨域请求处理
- 提供API演化和弃用策略
                        

数据库设计

全面的数据库设计文档,详细描述数据模型、表结构、关系和索引策略

数据模型 关系设计 索引策略 查询优化
# 数据库设计文档生成模板

## 前提条件
- 系统名称: [系统名称]
- 数据库类型 [关系型/NoSQL/时序/图数据库等]
- 具体数据库产品 [MySQL/PostgreSQL/MongoDB/Redis等]
- 数据量预估 [预期的数据规模和增长]

## 需求描述要点
- 数据库概览
  * 数据库选择理由
  * 整体设计原则
  * 主要功能需求支持
- 数据模型设计:
  * 实体关系图(ER图)
  * 主要实体和定义
  * 实体之间的关系和基数
- 集合设计:
  * 详细的表/集合结构
  * 每个字段的数据类型和约束
  * 主键和外键策略
  * 默认值和空值处理
- 索引策略:
  * 主要索引设计和理?
  * 唯一性约束
  * 复合索引设计
  * 索引使用注意事项
- 查询优化:
  * 常见查询模式分析
  * 查询优化策略
  * 预计的查询性能
- 数据迁移和演化
  * 版本控制和迁移策略
  * 向前兼容性考虑

## 输出格式
- 格式: 结构化技术文档
- 图表: 包含ER图和表关系图
- 表格: 使用表格清晰展示表结构

## 其他要求
- 考虑数据库性能和扩展?
- 包含数据备份和恢复策略
- 提供数据库安全性和访问控制建议
- 考虑分区/分片策略(如适用)
                        

微服务架构设计

微服务架构设计文档,包括服务划分、通信模式、数据一致性策略和部署模型。

微服务 服务边界 通信模式 DevOps
# 微服务架构设计文档生成模板

## 前提条件
- 系统名称: [系统名称]
- 业务领域: [系统所服务的业务领域]
- 规模和复杂度: [系统规模和复杂度估计]
- 技术栈偏好: [预期使用的技术栈,如有]

## 需求描述要点
- 微服务架构概述:
  * 采用微服务的理由和目标
  * 架构设计原则和约束
  * 整体架构图
- 服务划分:
  * 服务边界识别方法(领域驱动设计)
  * 详细的服务清单和职责
  * 每个服务的规模和复杂度评估
  * 服务间依赖关系
- 通信模式:
  * 同步通信策略(REST/gRPC)
  * 异步通信策略(消息队列/事件总线)
  * API 网关设计
  * 服务发现机制
- 数据管理:
  * 数据库策略(每服务独立数据库/共享数据库)
  * 数据一致性策略(分布式事务/最终一致性)
  * 查询策略(CQRS/API 组合)
  * 数据同步和迁移方案
- 弹性设计:
  * 服务容错策略(断路器/隔舱/超时)
  * 可扩展性设计(水平扩展/自动扩缩容)
  * 监控和可观测性策略
  * 性能优化考量
- 部署和运维:
  * 容器化策略
  * CI/CD 流程设计
  * 环境管理
  * 发布策略(蓝绿部署/金丝雀发布)
  * 配置管理

## 输出格式
- 格式: 结构化的技术文档
- 图表: 包含架构图、服务拓扑图和数据流图
- 示例: 提供关键设计决策的示例和实现参考

## 其他要求
- 考虑微服务架构的挑战和缓解策略
- 提供实施路线图和演进策略
- 评估技术选型的利弊
- 考虑组织结构和团队分工
                        
AI 生成示例
模板:未选择