[ 01 / CASE STUDY ]
一款已上线的实时多人 PWA,并公开了成本模型。
Codebasis · 2024–present · 设计、构建、运营
- 已测得帧数
- 172,681
- 建模并发对局数
- 10→1,000
- 建模月度成本
- $85→$1,150
挑战
一款四人实时对战游戏,配有 3D 棋盘,需要同时在手机与桌面端流畅运行、在并发下保持状态一致、支持机器人对手,并将运行成本控制在可承受范围内。
方法
- React 18 与 TypeScript 构建的 PWA,配合 Three.js 3D 棋盘、Redux Toolkit 与 RTK Query
- ASP.NET Core 10 API,搭配 SignalR 中枢,以及通过 EF Core 访问、使用 JSONB 列的 PostgreSQL
- 由 Swagger 生成的 TypeScript 客户端,确保两个代码仓库之间的接口契约保持一致
- 按游戏变体训练的 ONNX 机器人模型,缺失时回退至启发式模式
- 使用 Stripe Checkout 处理应用内购买
- 从 Docker 到 ECR 再到 ECS Fargate,配合 GitHub Actions 持续集成与持续交付,以及 Aurora Serverless v2
- Storybook 组件库;前端使用 Vitest,API 端使用 xUnit 与 Moq
- 基于 377 场实测对局与帧级数据发布容量与成本分析
技术栈
- asp.net core
- signalr
- postgresql
- react
- three.js
- rtk query
- onnx
- stripe
- ecs fargate
- github actions