Appearance
系统架构
产品系统架构说明
架构概览
说明
本文档描述产品的整体架构设计,帮助技术支持人员理解系统组成和数据流转。
系统组成
整体架构
┌─────────────────────────────────────────────────────────────┐
│ 用户层 │
│ (Web 浏览器 / 移动 App / 第三方系统) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 接入层 │
│ (Nginx / CDN / 负载均衡) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 应用层 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 用户服务 │ │ 业务服务 │ │ 数据服务 │ │ 报表服务 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 数据层 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ MySQL │ │ Redis │ │ MongoDB │ │ ES │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
└─────────────────────────────────────────────────────────────┘模块说明
| 层级 | 组件 | 功能说明 |
|---|---|---|
| 用户层 | Web 浏览器 | 用户访问入口 |
| 用户层 | 移动 App | 移动端访问 |
| 接入层 | Nginx | 反向代理、静态资源 |
| 接入层 | CDN | 内容分发加速 |
| 应用层 | 用户服务 | 用户认证、权限管理 |
| 应用层 | 业务服务 | 核心业务逻辑 |
| 应用层 | 数据服务 | 数据处理、存储 |
| 应用层 | 报表服务 | 数据统计、报表生成 |
| 数据层 | MySQL | 关系型数据存储 |
| 数据层 | Redis | 缓存、会话存储 |
| 数据层 | MongoDB | 非结构化数据存储 |
| 数据层 | ES | 全文检索、日志分析 |
数据流转
典型请求流程
mermaid
sequenceDiagram
participant U as 用户
participant N as Nginx
participant A as 应用服务
participant R as Redis
participant M as MySQL
U->>N: HTTP 请求
N->>A: 转发请求
A->>R: 查询缓存
alt 缓存命中
R-->>A: 返回缓存数据
else 缓存未命中
A->>M: 查询数据库
M-->>A: 返回数据
A->>R: 写入缓存
end
A-->>N: 返回响应
N-->>U: HTTP 响应部署架构
生产环境
部署说明
生产环境采用多节点部署,确保高可用性。
┌─────────────────────────────────────────┐
│ 负载均衡器 │
│ (Load Balancer) │
└─────────────────────────────────────────┘
│
┌───────────┼───────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ 应用节点 │ │ 应用节点 │ │ 应用节点 │
│ Node 1 │ │ Node 2 │ │ Node 3 │
└──────────┘ └──────────┘ └──────────┘
│ │ │
└───────────┼───────────┘
▼
┌──────────────┐
│ 数据库集群 │
│ (Primary-Replica) │
└──────────────┘监控告警
监控指标
| 指标 | 阈值 | 告警级别 |
|---|---|---|
| CPU 使用率 | > 80% | 警告 |
| 内存使用率 | > 85% | 警告 |
| 磁盘使用率 | > 90% | 严重 |
| 接口响应时间 | > 500ms | 警告 |
| 错误率 | > 1% | 严重 |