外观
三层框架
三层框架指前端层、后端层和数据层。他们共同构成了程序的骨架。
目录结构
text
systems/
├── apps/ # 前端 SPA 子应用(自动发现)
│ ├── _base/ # 跨项目共享组件和工具(_ 前缀自动忽略)
│ ├── admin/ # 管理后台
│ ├── account/ # 用户账户
│ └── ... # 其他子应用
├── apps-home/ # Nuxt 4 SSG 应用(自动发现)
│ ├── _base/ # 共享基础配置和模板(_ 前缀自动忽略)
│ ├── blog/ # 博客
│ └── ... # 其他落地页
├── src/ # 后端源码
│ ├── controllers/ # 控制器(cCamelCase 命名)
│ ├── services/ # 业务逻辑(TReturn<T> 返回格式)
│ ├── models/ # 数据模型(PascalCase)
│ ├── routes/ # 路由定义
│ ├── middlewares/ # 中间件
│ ├── utils/ # 工具函数
│ └── websockets/ # WebSocket 处理
├── typings/ # 全局类型定义(前后端共享)
├── migrations/ # 数据库迁移
├── scripts/ # 构建和部署脚本
├── schedules/ # 定时任务
├── consumers/ # RabbitMQ 消费者
├── hosts/ # 服务器配置(nginx/Docker/RabbitMQ)
├── views/ # EJS 模板
├── public/ # 静态资源
└── assets/ # 邮件模板、提示词模板等1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
4.2 技术栈清单(全部实际使用)
核心框架
| 技术 | 版本 | 用途 | 配置文件 |
|---|---|---|---|
| Node.js | v22.18+ | 服务端运行时(原生 TS 支持) | [package.json](file:///c:/workspace/develop/tech/package.json) |
| TypeScript | v5.8 | 类型系统 | [tsconfig.json](file:///c:/workspace/develop/tech/tsconfig.json) |
| Express.js | v4.21 | 后端框架 | [src/app.mts](file:///c:/workspace/develop/tech/src/app.mts) |
| Vue 3 | v3.5 | 前端框架 | [package.json](file:///c:/workspace/develop/tech/package.json#L164) |
| Nuxt 4 | v4.3.1 | SSR 框架 | [package.json](file:///c:/workspace/develop/tech/package.json#L229) |
| Vite | v6.4 | 前端构建 | [package.json](file:///c:/workspace/develop/tech/package.json#L241) |
| Element Plus | v2.10 | UI 组件库 | [package.json](file:///c:/workspace/develop/tech/package.json#L116) |
| Pinia | v3.0 | 状态管理 | [package.json](file:///c:/workspace/develop/tech/package.json#L150) |
四、技术架构全景
4.1 分层架构图
┌─────────────────────────────────────────────────────────────┐
│ 接入层 (Access Layer) │
│ nginx 反向代理 · CDN · SSL · 多域名 · 多机房 │
│ hosts/Shanghai hosts/SiliconValley │
├─────────────────────────────────────────────────────────────┤
│ 前端应用层 (Frontend Layer) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │
│ │ apps/ │ │ apps-home/ │ │ admin/ 后台 │ │
│ │ Vue3 + Vite │ │ Nuxt 4 SSR │ │ Element Plus │ │
│ │ 20+ 业务应用 │ │ 10+ 落地页 │ │ 管理控制台 │ │
│ └──────┬───────┘ └──────┬───────┘ └────────┬─────────┘ │
│ └─────────────────┼───────────────────┘ │
│ _base/ 基座共享 │
├─────────────────────────────────────────────────────────────┤
│ API 网关层 (API Gateway) │
│ Express Router · 统一响应 · 限流 · CORS · 性能监控 │
│ src/middlewares/ (16 个中间件) │
├─────────────────────────────────────────────────────────────┤
│ 业务服务层 (Service Layer) │
│ ┌─────────┬─────────┬─────────┬─────────┬─────────┐ │
│ │ 用户服务 │ 支付服务 │ 文件服务 │ 消息服务 │ 监控服务 │ │
│ ├─────────┼─────────┼─────────┼─────────┼─────────┤ │
│ │ AI 服务 │ 内容服务 │ 预订服务 │ 分享服务 │ 导航服务 │ │
│ └─────────┴─────────┴─────────┴─────────┴─────────┘ │
│ src/services/ (50+ 服务模块) │
├─────────────────────────────────────────────────────────────┤
│ 数据持久层 (Data Layer) │
│ MySQL/MariaDB · Knex.js · 70+ 数据表 │
│ migrations/ · src/models/ │
├─────────────────────────────────────────────────────────────┤
│ 基础设施层 (Infrastructure) │
│ RabbitMQ · 七牛云 OSS · 微信/短信/邮件 · LLM API │
│ consumers/ · schedules/ · websockets/ │
└─────────────────────────────────────────────────────────────┘1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34