docs: 记录开发服务器 E2E、负载与恢复演练结果
This commit is contained in:
@@ -60,3 +60,20 @@
|
||||
1. 按 `docs/operations/backup-restore-drill.md` 恢复。
|
||||
2. 核对巡检、检测、会诊、溯源、图片/光谱/录像引用。
|
||||
3. 记录 RPO/RTO 和失败项。
|
||||
|
||||
## 2026-08-14 开发服务器执行结果
|
||||
|
||||
环境:`100.83.103.1`,Go schema v8,Web :5174,AI :8000(mock)。
|
||||
|
||||
| 用例 | 结果 | 说明 |
|
||||
|---|---|---|
|
||||
| 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 | 备份恢复至隔离库,核心表数量与生产库一致 |
|
||||
|
||||
@@ -37,3 +37,15 @@
|
||||
- 不在生产库执行写入类负载。
|
||||
- 不使用真实用户隐私图片做公开压测。
|
||||
- 压测前必须备份数据库并记录环境状态。
|
||||
|
||||
## 2026-08-14 开发服务器冒烟结果
|
||||
|
||||
环境:`100.83.103.1`,Go :3000,Web :5174,AI :8000(mock)。
|
||||
|
||||
| 场景 | 结果 |
|
||||
|---|---|
|
||||
| A. 500 请求 API 混合冒烟(健康接口) | 500/500 成功,失败率 0%,p50 99.1ms,p95 182.3ms |
|
||||
| B. 1000 WebSocket 连接 | 1000/1000 成功,失败率 0%,连接建立+保持 1s 的 p50 1506.5ms,p95 1854.9ms |
|
||||
| C. AI 峰值 | 未执行:当前为 mock,未使用 T4 和真实模型 |
|
||||
|
||||
说明:B 场景为短时连接冒烟,不等同于 30 分钟持续连接验收;完整验收仍需记录 30 分钟连接稳定性、掉线率和资源曲线。
|
||||
|
||||
@@ -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;
|
||||
- 新路由未登录返回 401,确认路由已注册;
|
||||
- `admin/silk@123` 登录成功;登录态下检测任务、发病事件、生物安全、会诊、效果报告、运维指标接口均返回 200,二维码空载荷返回 400。
|
||||
- E2E 结果:E2E-01/03/04/05/06/08/09/10 通过;E2E-02 因 mock 隔离 blocked;E2E-07 队列单测通过。
|
||||
- 负载冒烟:500 HTTP 请求 0% 失败;1000 WebSocket 连接 0% 失败。
|
||||
- 备份恢复:当前 schema 备份 `/home/pan/backups/silk-20260814-194300.dump` 已恢复到隔离库并核对一致。
|
||||
|
||||
### 回滚点
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
| Wave 3 | 业务闭环 | Task 11 实现小程序离线巡检与可靠同步 | 部分可用 | 待开发服务器迁移部署与开发者工具离线/重启联调 |
|
||||
| Wave 3 | 业务闭环 | Task 12 完善环境规则、会诊治理、知识审核与效果评估 | 部分可用 | 待开发服务器迁移部署与专家/试点联调 |
|
||||
| Wave 4 | 验收与发布 | Task 13 建立可观测性、容量与恢复验证 | 部分可用 | 待真实环境负载/备份恢复演练与告警通道联调 |
|
||||
| Wave 4 | 验收与发布 | Task 14 建立规格追踪、端到端验收与发布门禁 | 部分可用 | 已部署并完成登录态冒烟;待 E2E、恢复演练 |
|
||||
| Wave 4 | 验收与发布 | Task 14 建立规格追踪、端到端验收与发布门禁 | 部分可用 | 已部署并完成 E2E/负载/恢复冒烟;待 30 分钟 WS、AI T4、正式发布 |
|
||||
|
||||
## 技术选型决策(2026-08-11 确定)
|
||||
|
||||
|
||||
@@ -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;
|
||||
- 后端日志显示 `schemaVersion=8` 和正常启动,无 panic;
|
||||
- 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.3ms;1000 WebSocket 连接 0% 失败,短时保持 p50 1506.5ms/p95 1854.9ms;
|
||||
- 当前 schema 全量备份:`/home/pan/backups/silk-20260814-194300.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.broken-20260814-1921`;
|
||||
- Web 旧目录:`/home/pan/silk/web/dist.pre-20260814-191754`;
|
||||
|
||||
Reference in New Issue
Block a user