技术选型总览
位置: docs/11_技术选型/技术选型总览.md
版本: v1.0
日期: 2026-07-08
关联: AGENTS.md 技术合规铁律、docs/开发规范/技术栈合规清单.md
1. 选型原则
所有技术必须开源可商用或已获合法授权。
详见 docs/00_项目概述/开发规范/技术栈合规清单.md
| 原则 |
说明 |
| 开源优先 |
优先选择 MIT/Apache-2.0/BSD 协议的开源技术 |
| 商用授权 |
闭源技术必须有商用授权协议 |
| 社区活跃 |
选择社区活跃、维护良好的技术,避免技术债务 |
| 团队熟悉 |
优先选择团队有使用经验的技术,降低学习成本 |
2. 技术栈总览
2.1 客户端
| 技术 |
版本 |
用途 |
协议 |
| Cocos Creator |
3.8.8 |
游戏引擎 |
免费版(商用许可) |
| TypeScript |
5.x |
客户端脚本语言 |
Apache-2.0 |
2.2 服务端
| 技术 |
版本 |
用途 |
协议 |
| Go |
1.22+ |
服务端语言 |
BSD-3 |
| Nakama |
3.x |
游戏服务端框架 |
Apache-2.0 |
| PostgreSQL |
16+ |
关系型数据库 |
PostgreSQL License |
| Valkey |
8+ |
缓存/会话存储 |
BSD-3 |
2.3 基础设施
| 技术 |
版本 |
用途 |
协议 |
| Docker |
latest |
容器化 |
Apache-2.0 |
| Nacos |
2.x |
配置中心/服务发现 |
Apache-2.0 |
| Nginx |
1.25+ |
反向代理/负载均衡 |
BSD-2 |
| Prometheus |
2.x |
监控 |
Apache-2.0 |
| Grafana |
10.x |
可视化监控 |
AGPL(前端)/ Apache-2.0(服务端) |
| Protobuf |
3.x |
序列化协议 |
BSD-3 |
3. 架构概览
┌─────────────────────────────────────────────┐
│ 客户端 (Cocos Creator) │
│ ┌─────────┐ ┌─────────┐ ┌─────────────┐ │
│ │ UI 层 │ │ 系统层 │ │ 网络层 │ │
│ │ scenes │ │ systems │ │ NetworkMgr │ │
│ └─────────┘ └─────────┘ └─────────────┘ │
└──────────────────┬──────────────────────────┘
│ WebSocket / gRPC
┌──────────────────┴──────────────────────────┐
│ Nakama 游戏服务端 │
│ ┌─────────┐ ┌─────────┐ ┌─────────────┐ │
│ │ RPC │ │ Match │ │ Middleware │ │
│ │ 业务逻辑 │ │ 实时对战 │ │ 认证/限流 │ │
│ └─────────┘ └─────────┘ └─────────────┘ │
└──────────────────┬──────────────────────────┘
│ SQL / Redis 协议
┌──────────┴──────────┐
▼ ▼
┌───────────────┐ ┌─────────────────┐
│ PostgreSQL │ │ Valkey │
│ 玩家数据 │ │ 缓存/会话/排行 │
└───────────────┘ └─────────────────┘
4. 详细技术文档
详细的技术设计文档(TDD)将在进入开发阶段后编写。
当前处于设计阶段,技术类内容仅限于选型概览。
| 主题 |
状态 |
说明 |
| 服务端整体架构 |
待编写 |
进入开发阶段后补充 TDD |
| 客户端热更新方案 |
待编写 |
进入开发阶段后补充 TDD |
| 数据库表结构设计 |
待编写 |
进入开发阶段后补充 TDD |
| API 接口设计 |
待编写 |
进入开发阶段后补充 TDD |
| 反作弊与安全设计 |
待编写 |
进入开发阶段后补充 TDD |
| 实时位置同步 |
待编写 |
进入开发阶段后补充 TDD |
5. 版本记录
- v1.0(2026-07-08): 初始版本,汇总技术选型,标记详细 TDD 待开发阶段补充