docs: 3.5.0设计文档

This commit is contained in:
R524809
2026-10-16 16:00:59 +08:00
parent 08d9a2792a
commit eddd7d75e2
7 changed files with 46 additions and 25 deletions
+2
View File
@@ -1,5 +1,7 @@
# Doodle / 涂鸦丫 - PC Web 端技术预案
> **2026-10-12 决策更新**:本文保留为历史预案,DAU 启动门槛和浏览器承载完整生成器不作为当前决策。现有后端已决定迁移到自有服务器,见 [迁移方案(doodle-store)](../../doodle-store/docs/云服务端迁移方案.md);Web 范围和私有服务端生成见 [v3.5 策略](./v3.5/Web与服务端生成策略.md)。
> 状态:**远期规划**(当前聚焦小程序,暂不启动 Web 开发)
> 最后更新:2026-03-24
> 配套文档:[技术架构设计文档](./技术架构设计文档.md) | [产品设计文档](./产品设计文档.md)
+7 -4
View File
@@ -1,16 +1,17 @@
# Doodle Mini v3.5 规划索引
> 状态:待评审
> 状态:产品规划待评审;云服务端迁移方向已确认,待实施
>
> 更新日期:2026-09-24
> 更新日期:2026-10-12
v3.5 的目标不是继续堆叠题型,而是把「生成一张练习纸」升级为家长可持续使用的家庭打印学习服务,并为未来 Web 内容平台建立服务端生成能力。
## 本阶段的三项决策
## 本阶段的四项决策
1. **小程序仍是当前主产品。** 优先改善家长首次找到内容、完成打印、再次回来使用的体验。
2. **创意涂色纸是下一项内容型 MVP。** 它覆盖低龄儿童、视觉传播力强,也最适合作为服务端生成的首个试点。
3. **现在开始建设 Web 底座,不启动完整 Web 平台。** 新增高价值题型优先接入服务端生成;既有小程序题型不做一次性迁移。
4. **现有业务后端迁移到自有云服务器。** 采用统一 API、MySQL 和七牛文件存储;CloudBase 只在切换期承担旧版兼容。业务后端迁移与存量 Canvas 服务端重写分别实施。
## 文档
@@ -19,11 +20,13 @@ v3.5 的目标不是继续堆叠题型,而是把「生成一张练习纸」升
| [产品路线图](./产品路线图.md) | 用户问题、功能优先级、阶段目标与验收指标 |
| [待办与里程碑](./待办与里程碑.md) | 可执行的产品、设计、研发待办与依赖关系 |
| [Web 与服务端生成策略](./Web与服务端生成策略.md) | Web 试点范围、服务端渲染边界及技术演进决策 |
| [云服务端迁移方案(doodle-store)](../../../doodle-store/docs/云服务端迁移方案.md) | 在新项目统一维护:现有功能/API 映射、数据与文件迁移、实施待办、切换回滚、验收及 AI 辅助工时预算 |
| [埋点事件字典](./埋点事件字典.md) | 现有事件和成功保存口径;后端迁移继续沿用 |
## 不在 v3.5 范围内
- 完整的 Kiddoleap 风格 Web 资源平台、全量 SEO 内容站。
- 一次性迁移所有云数据库、云函数和既有 Canvas 题型到独立服务器。
- 在业务后端迁移中同时重写全部既有 Canvas 题型。
- 社区晒图、公开儿童信息、复杂学习报告。
- 会员支付、PDF 多页合并等商业化闭环;仅预留数据与服务端能力。
+18 -19
View File
@@ -1,8 +1,10 @@
# Doodle Mini v3.5 Web 与服务端生成策略
> 状态:架构决策草案
> 状态:迁移到自有云服务器的方向已确认;Web 与绘图试点待实施
>
> 更新日期:2026-09-24
> 更新日期:2026-10-12
> 现有业务后端的迁移范围、切换顺序和验收以[云服务端迁移方案(doodle-store)](../../../doodle-store/docs/云服务端迁移方案.md)为准。本文说明迁移后 Web 与服务端生成的演进,不再以继续保留 CloudBase 业务后端为目标。
## 1. 决策结论
@@ -10,9 +12,7 @@
Web 是长期的搜索获客、内容沉淀、电脑打印和教师/机构扩展渠道;小程序仍是当前的微信内打开、分享、每日推荐和家庭留存主产品。
因此,v3.5 采用:
> **70% 投入小程序核心体验,30% 投入 Web 与服务端生成试点。**
v3.5 将现有业务后端迁移作为独立实施任务,小程序体验和小规模 Web/服务端生成按里程碑推进,不预设固定投入比例。
不等待小程序“达到很大用户量”才准备 Web,因为搜索内容、服务端渲染和内容生产机制都需要时间积累;但也不在内容库、内容生产和核心留存未验证时建设完整 Web 平台。
@@ -102,28 +102,27 @@ favoriteService.toggle(worksheetId)
historyService.list()
```
小程序适配器可以暂时使用云函数,Web 使用 HTTP;上层页面不感知具体实现。
新版小程序与后续 Web 统一使用 HTTP 业务 API;旧版云函数只在过渡期转发同一业务实现。上层页面不感知数据库与文件存储实现。
## 5. 后端演进路径
### 阶段 A:现在至创意涂色 MVP
### 阶段 A:现有业务后端迁移
- 保留 CloudBase 数据库、存储和既有云函数。
- 新建可通过 HTTP 调用的 Render API;可先使用 CloudBase 云托管容器,无需立即维护独立云服务器。
- 私有素材存放在不可公开枚举的对象存储路径;最终文件通过短期 URL 交付。
- 只迁移创意涂色纸,验证延迟、成本和保护边界。
- 按专项方案迁移现有云函数、数据库、文件和定时任务到自有腾讯云服务器 + MySQL + 七牛。
- 新版小程序经业务服务层调用统一 HTTP API;短期兼容桥照顾旧正式版本,只有一个业务写入源。
- 先保持现有生成与保存行为,再验收数据关联、文件、计数和切换;不同时重写所有绘图代码。
### 阶段 B:Web 小规模试点
### 阶段 B:服务端生成样板
- Web 调用统一 HTTP API;小程序继续调用业务服务层。
- 新题型优先服务端生成;旧题型按商业价值与迁移成本逐步处理。
- 增加异步渲染任务、缓存、批量导出和基础监控。
- 在同一后端增加受控 Render API,以创意涂色或一个简单现有题型验证生成、字体、延迟和文件交付。
- 原始素材和模板采用私有存储;最终文件通过受控地址交付,不依赖隐藏对象路径保护素材。
- 根据实际任务量增加缓存/异步处理,不预先搭建独立队列平台。
### 阶段 C:扩张决策
### 阶段 C:Web 小规模试点与扩张
当 Web 需要 SEO、会员支付、复杂搜索、教师版、批量 PDF、AI/异步任务,或 CloudBase 成本与能力成为瓶颈时,再迁核心 API 到 NestJS + MySQL/对象存储。
迁移的是业务 API 和数据,不是让前端重新实现一套生成逻辑。
- Web 复用统一 API 和内容源,内容页面使用适当的预生成或服务端渲染,生成规则留在服务器。
- 只建设下节规定的 MVP;旧题型按价值与实际适配成本逐步接入,批量 PDF/会员另行评估。
- 私有生成进程可按资源需求拆分,但不另建用户、收藏、内容数据库或第二套业务规则。
## 6. 安全、成本与体验基线
+14 -1
View File
@@ -2,7 +2,7 @@
> 状态:待排期
>
> 更新日期:2026-09-24
> 更新日期:2026-10-12
## 0. 排期原则
@@ -10,6 +10,19 @@
以下周期为相对迭代,不绑定具体人天;每个里程碑完成后应先检查数据,再决定是否扩大范围。
现有业务后端已决定迁移到自有云服务器。该专项按下列 S0–S5 执行,业务后端迁移与存量 Canvas 重写分别排期。详细清单、工时假设及切换步骤见[云服务端迁移方案(doodle-store)](../../../doodle-store/docs/云服务端迁移方案.md)。
## 服务端迁移专项(S0–S5)
- [ ] S0:盘点实际线上集合、云文件、服务器、域名和权限,保留原始备份及功能样本。
- [ ] S1:完成统一 API/数据库骨架、微信登录、题型读取、收藏/下载幂等事务。
- [ ] S2:补齐现有管理接口、首页配置/推荐、七牛文件上传与定时任务。
- [ ] S3:完成小程序 HTTP 接入、试迁审计、旧版兼容桥、恢复演练和体验版真机验收。
- [ ] S4:冻结旧写入,最终导入后切换唯一写入源,再发布新版并核对线上行为。
- [ ] S5:旧版及旧文件依赖达到退场条件后,归档并完全退出 CloudBase。
服务端生成样板在 S3 验收基础上单独实施;完整 Web 与新产品功能不计入这次现有功能迁移的完成标准。
## M0:体验与数据基线(第 1 个迭代)
### 产品与研发
+2
View File
@@ -1,5 +1,7 @@
# Doodle Mini — 后端部署方案(NestJS + 自有云服务器)
> **2026-10-12 决策更新**:已确认迁移到自有腾讯云服务器。当前实施请使用 [云服务端迁移方案(doodle-store)](../../doodle-store/docs/云服务端迁移方案.md)。本文保留为历史技术预案,其中版本、数据模型与本地文件方案不可直接当作当前实施规格;“零增量成本/零成本 CDN”不作为成本事实。
> 版本:v1.0
> 最后更新:2026-03-27
> **定位**:**远期 / 阶段到期后的迁移方案**(自有服务器 + NestJS)。
@@ -1,5 +1,7 @@
# Doodle Mini — 小程序云开发方案
> **2026-10-12 决策更新**:本文用于了解现网 CloudBase 和历史数据设计。已确认迁移到自有云服务器,实施以 [云服务端迁移方案(doodle-store)](../../doodle-store/docs/云服务端迁移方案.md) 为准。迁移集合和字段以实际代码及线上盘点为准,不直接按本文的设计集合导入。
> 版本:v1.1
> 最后更新:2026-03-27
> **适用范围**:与 [技术架构设计文档](./技术架构设计文档.md) 配套;**当前阶段**采用本文档所述微信云开发环境实现后端能力。
+1 -1
View File
@@ -4,7 +4,7 @@
> 最后更新:2026-03-27
> 配套文档:[现有功能清单](./现有功能清单.md) | [产品设计文档](./产品设计文档.md) | [小程序云开发方案](./小程序云开发方案.md) | [后端部署方案](./后端部署方案.md) | [PC-Web端技术预案](./PC-Web端技术预案.md)
**后端阶段说明(重要)**:**现阶段**后端能力采用**微信小程序云开发**(云数据库、云存储、云函数),与 [小程序云开发方案](./小程序云开发方案.md) 一致。**当前阶段有效期至 2026 年 9 月 15 日**(到期前需结合用量、成本与产品路线,决定续用云开发、升级套餐或迁移至 [后端部署方案](./后端部署方案.md) 所述 NestJS + 自有服务器方案)。前端仍通过 `platform/cloud-adapter` 对接 `wx.cloud`,迁移时再抽象为 HTTP 适配层。
**后端阶段说明(2026-10-12 更新)**:现网仍使用微信云开发,已确认迁移到自有腾讯云服务器 + 统一 API + MySQL + 七牛。实施、兼容与退场以 [云服务端迁移方案(doodle-store)](../../doodle-store/docs/云服务端迁移方案.md) 为准;下文旧阶段、免费额度及未来方案描述作为历史设计参考。当前云调用散落在多个工具和页面,不能仅修改 `platform/cloud-adapter` 完成迁移。存量小程序 Canvas 绘制与本次业务后端迁移分别实施。
---