docs: 记录开发服务器 E2E、负载与恢复演练结果

This commit is contained in:
weijuesen
2026-08-14 19:47:02 +08:00
parent 8c56b25f8a
commit 3845194046
5 changed files with 37 additions and 1 deletions
+17
View File
@@ -60,3 +60,20 @@
1.`docs/operations/backup-restore-drill.md` 恢复。 1.`docs/operations/backup-restore-drill.md` 恢复。
2. 核对巡检、检测、会诊、溯源、图片/光谱/录像引用。 2. 核对巡检、检测、会诊、溯源、图片/光谱/录像引用。
3. 记录 RPO/RTO 和失败项。 3. 记录 RPO/RTO 和失败项。
## 2026-08-14 开发服务器执行结果
环境:`100.83.103.1`Go schema v8Web :5174AI :8000mock)。
| 用例 | 结果 | 说明 |
|---|---|---|
| E2E-01 | PASS | healthy 图片 riskScore=0/riskLevel=green,未创建检测任务 |
| E2E-02 | BLOCKED | mock 结果为 `isMock=true`,按设计不进入生产检测任务;待真实模型后执行 |
| E2E-03 | PASS | AI 停止时 `aiStatus=failed` 且无风险;同一幂等键返回原失败记录,恢复后新键上传成功 |
| E2E-04 | PASS | qPCR `invalid` 未创建 DiseaseEvent |
| E2E-05 | PASS | LAMP `positive` 创建 1 个 confirmed DiseaseEvent 和 1 个 TraceRecord |
| E2E-06 | PASS | 普通 viewer 调用控制接口和创建检测任务均 403 |
| E2E-07 | PASS(单元) | 队列单测 5/5;微信开发者工具离线重启截图取证未执行 |
| E2E-08 | PASS | 未配置微信的 Outbox 事件进入 retry,通知表保留尝试次数和错误 |
| E2E-09 | PASS | 吊销 token 后重启 Go,旧 token 仍 401,业务数据保持 |
| E2E-10 | PASS | 备份恢复至隔离库,核心表数量与生产库一致 |
+12
View File
@@ -37,3 +37,15 @@
- 不在生产库执行写入类负载。 - 不在生产库执行写入类负载。
- 不使用真实用户隐私图片做公开压测。 - 不使用真实用户隐私图片做公开压测。
- 压测前必须备份数据库并记录环境状态。 - 压测前必须备份数据库并记录环境状态。
## 2026-08-14 开发服务器冒烟结果
环境:`100.83.103.1`Go :3000Web :5174AI :8000mock)。
| 场景 | 结果 |
|---|---|
| A. 500 请求 API 混合冒烟(健康接口) | 500/500 成功,失败率 0%p50 99.1msp95 182.3ms |
| B. 1000 WebSocket 连接 | 1000/1000 成功,失败率 0%,连接建立+保持 1s 的 p50 1506.5msp95 1854.9ms |
| C. AI 峰值 | 未执行:当前为 mock,未使用 T4 和真实模型 |
说明:B 场景为短时连接冒烟,不等同于 30 分钟持续连接验收;完整验收仍需记录 30 分钟连接稳定性、掉线率和资源曲线。
+3
View File
@@ -1201,6 +1201,9 @@ UPDATE cameras SET gb_channel_id = '44010201001320000001' WHERE gb_device_id = '
- Go `/api/v1/health` 200、Web `:5174` 200、AI `/health` 200 - Go `/api/v1/health` 200、Web `:5174` 200、AI `/health` 200
- 新路由未登录返回 401,确认路由已注册; - 新路由未登录返回 401,确认路由已注册;
- `admin/silk@123` 登录成功;登录态下检测任务、发病事件、生物安全、会诊、效果报告、运维指标接口均返回 200,二维码空载荷返回 400。 - `admin/silk@123` 登录成功;登录态下检测任务、发病事件、生物安全、会诊、效果报告、运维指标接口均返回 200,二维码空载荷返回 400。
- E2E 结果:E2E-01/03/04/05/06/08/09/10 通过;E2E-02 因 mock 隔离 blockedE2E-07 队列单测通过。
- 负载冒烟:500 HTTP 请求 0% 失败;1000 WebSocket 连接 0% 失败。
- 备份恢复:当前 schema 备份 `/home/pan/backups/silk-20260814-194300.dump` 已恢复到隔离库并核对一致。
### 回滚点 ### 回滚点
+1 -1
View File
@@ -22,7 +22,7 @@
| Wave 3 | 业务闭环 | Task 11 实现小程序离线巡检与可靠同步 | 部分可用 | 待开发服务器迁移部署与开发者工具离线/重启联调 | | Wave 3 | 业务闭环 | Task 11 实现小程序离线巡检与可靠同步 | 部分可用 | 待开发服务器迁移部署与开发者工具离线/重启联调 |
| Wave 3 | 业务闭环 | Task 12 完善环境规则、会诊治理、知识审核与效果评估 | 部分可用 | 待开发服务器迁移部署与专家/试点联调 | | Wave 3 | 业务闭环 | Task 12 完善环境规则、会诊治理、知识审核与效果评估 | 部分可用 | 待开发服务器迁移部署与专家/试点联调 |
| Wave 4 | 验收与发布 | Task 13 建立可观测性、容量与恢复验证 | 部分可用 | 待真实环境负载/备份恢复演练与告警通道联调 | | Wave 4 | 验收与发布 | Task 13 建立可观测性、容量与恢复验证 | 部分可用 | 待真实环境负载/备份恢复演练与告警通道联调 |
| Wave 4 | 验收与发布 | Task 14 建立规格追踪、端到端验收与发布门禁 | 部分可用 | 已部署并完成登录态冒烟;待 E2E、恢复演练 | | Wave 4 | 验收与发布 | Task 14 建立规格追踪、端到端验收与发布门禁 | 部分可用 | 已部署并完成 E2E/负载/恢复冒烟;待 30 分钟 WS、AI T4、正式发布 |
## 技术选型决策(2026-08-11 确定) ## 技术选型决策(2026-08-11 确定)
+4
View File
@@ -1223,10 +1223,14 @@ MVP 沿用 IoTDB(现状);TDengine 作为生产规模化候选(先基准
- 使用 `admin/silk@123` 登录成功,登录态下 `/detection-tasks``/disease-events``/biosecurity/seed-sources``/biosecurity/disinfection-records``/consultations``/ops/metrics``/health-profiles/:id/effect` 均返回 200`POST /biosecurity/qr/resolve` 空载荷返回 400 - 使用 `admin/silk@123` 登录成功,登录态下 `/detection-tasks``/disease-events``/biosecurity/seed-sources``/biosecurity/disinfection-records``/consultations``/ops/metrics``/health-profiles/:id/effect` 均返回 200`POST /biosecurity/qr/resolve` 空载荷返回 400
- 后端日志显示 `schemaVersion=8` 和正常启动,无 panic - 后端日志显示 `schemaVersion=8` 和正常启动,无 panic
- IoTDB 仍不可用并降级 PostgreSQL,属部署前已知状态; - IoTDB 仍不可用并降级 PostgreSQL,属部署前已知状态;
- 开发服务器 E2E-01/03/04/05/06/08/09/10 通过,E2E-02 因 mock 隔离按设计 blocked,E2E-07 队列单测通过但微信开发者工具重启取证未执行;
- 负载冒烟:500 HTTP 请求 0% 失败,p50 99.1ms/p95 182.3ms1000 WebSocket 连接 0% 失败,短时保持 p50 1506.5ms/p95 1854.9ms
- 当前 schema 全量备份:`/home/pan/backups/silk-20260814-194300.dump`,已恢复至隔离库核对表数量一致。
### 回滚点 ### 回滚点
- 数据库:`/home/pan/backups/silk-20260814-191754.dump` - 数据库:`/home/pan/backups/silk-20260814-191754.dump`
- 当前 schema 数据库:`/home/pan/backups/silk-20260814-194300.dump`
- Go 旧二进制:`/home/pan/silk/server-go/server-go-linux.pre-20260814-191754` - Go 旧二进制:`/home/pan/silk/server-go/server-go-linux.pre-20260814-191754`
- Go 修复前问题二进制:`/home/pan/silk/server-go/server-go-linux.broken-20260814-1921` - Go 修复前问题二进制:`/home/pan/silk/server-go/server-go-linux.broken-20260814-1921`
- Web 旧目录:`/home/pan/silk/web/dist.pre-20260814-191754` - Web 旧目录:`/home/pan/silk/web/dist.pre-20260814-191754`