更新时间:2026-08-18。阅读方式:先看“一眼概览”和任务表,再按“下一步动作”推进;详细链路见商品报价与 Mongo 读模型总文档。
一眼概览
| 项目 | 当前结论 |
|---|---|
| 升级目标 | 解决 Sale Work 阻塞、MQ/Mongo 写入乱序和报价链路单点依赖,保证商品、价格、库存可以独立稳定地提供服务。 |
| 当前阶段 | Sale Work 阻塞治理已完成;MQ/Mongo 多类型梳理继续推进;统一 Mongo 写入和有序化设计尚未开始。 |
| 本周重点 | 补齐 MQ/Mongo 入口证据;梳理统一 Mongo 写入和有序化的可优化点;建立存储慢查询治理步骤;优化 Robot 和 AI 日志量。 |
| 最大风险 | 下游超时仍可能拖慢报价整页;重复、乱序或部分成功可能造成 Mongo、ES、Redis 读模型不一致。 |
当前任务进度
| 优先级 | 修改点 | 当前进度 | 当前正在做什么 | 下一步动作 | 完成标准 | 计划安排 |
|---|---|---|---|---|---|---|
| P0 | 机器人服务剥离——机器人数据库独立 | 完成(验收收尾) | 已完成:机器人数据库独立、基础迁移。<br>待补:迁移记录、连接配置、数据校验、并发压测和生产验收证据。 | 1. 验证机器人不再访问站管家数据库<br>2. 执行并发消息和连接数压测<br>3. 完成上线验收并关闭旧库依赖 | 机器人不再读写站管家库;迁移前后数据一致;压测和回归通过 | 已完成,补齐验收证据 |
| P0 | Sale 服务——Work 进程阻塞治理 | 已完成 | 治理方案已上线,Work 消费、异常超时退出、进程恢复和核心报价链路已完成验证。 | 无新增改造,纳入日常监控 | Work 能持续消费;异常请求可超时退出;进程可恢复;核心报价接口稳定 | 已完成 |
| P0 | MQ/Mongo 多类型梳理 | 30% | 已完成:三条 MQ 的 Consumer、Queue、Routing Key、主要调用和最终字段首版;Mongo 入口首版范围已覆盖 HTTP、MQ 后置 Job、CLI 主同步和补偿/修复脚本。<br>正在补充:Producer、调度、运行态、责任边界和全链路读回。 | 1. 补齐每类入口的调用链、入参、出参、字段和下游使用场景<br>2. 核实 Producer、调度、ACK、重试、重放和责任人<br>3. 完成 Mongo/ES/Redis 读回,并形成统一入口台账 | 三条 MQ 和所有 Mongo 入口均可追到事实源、写入者、最终投影和页面影响 | 第一阶段 |
| P0 | 统一 Mongo 写入和有序化设计 | 待设计 | 已确认:乱序、重复消费、ACK 过早和 Mongo/ES/Redis 部分成功风险。<br>正在确认:字段 owner、事实源和覆盖规则。<br>当前缺少:可评审的事件和任务模型。 | 1. 定义事件契约、Inbox、任务状态和唯一键<br>2. 设计幂等、版本条件更新和同 SID/SKU 串行规则<br>3. 设计投影失败补偿、重放和验收场景并完成评审 | 方案覆盖重复、乱序、失败、超时和重放场景,并具备可实现的表结构和状态机 | 第二阶段前置 |
| P1 | 商品报价独立缓存 | 未开始 | 现状:报价缓存仍与站管家其他存储共用。<br>缺口:依赖方和数据边界尚未盘点。<br>前置:等待统一写入和字段 owner 方案确定。 | 1. 盘点读写方、容量、索引和迁移范围<br>2. 设计双写/影子校验、灰度切换和回滚<br>3. 完成差异读回,确认报价链可独立发布 | 报价链独立于站管家其他缓存;切换失败可回退;数据差异可解释 | 第二阶段 |
| P1 | 报价接口降级 | 未开始 | 现状:Sale 仍同步聚合基础信息、价格、库存、车型和在途。<br>风险:任一下游超时仍可能影响整页响应。<br>待确定:三块接口的错误状态和前端展示。 | 1. 拆分商品基础信息、价格、库存接口<br>2. 分别定义超时、重试、局部错误、空数据和加载状态<br>3. 增加兼容接口、灰度开关和提交前强校验 | 价格或库存异常不影响基础商品展示;用户可以局部重试;最终操作使用最新价格和库存 | 第三阶段 |
| P1 | Mongo/MySQL/Redis 慢查询与索引优化 | 未开始 | 现状:尚无三类存储的慢查询、P95、锁等待和连接占用基线。<br>缺口:尚无 Top N 查询、命令和索引清单。<br>原则:基线确认前不直接删除或大范围修改生产索引。 | 1. 采集 Mongo 慢查询、MySQL 慢 SQL、Redis SLOWLOG 和资源指标<br>2. 对 Top N 执行 explain()、EXPLAIN,分析索引和查询条件<br>3. 优化查询/索引,压测回归并建立持续告警 | 慢查询数量、P95、扫描量、锁等待、连接占用和阻塞时长达到确认目标 | 与第二阶段并行 |
| P2 | 补偿、巡检和修复脚本治理 | 未开始 | 现状:只有风险清单和排查手册。<br>缺口:尚无统一投影巡检和失败任务视图。<br>风险:历史脚本仍需逐项评估生产权限和覆盖风险。 | 1. 建立 Mongo/ES/Redis 一致性巡检<br>2. 支持按事件、SID、SKU 和投影单独重放<br>3. 为修复脚本增加 dry-run、影响量、审批、审计和失败清单 | 失败可发现、可定位、可重放;人工修复可审计、可回读 | 后续治理 |
本周重点
- MQ/Mongo 多类型梳理:补齐 Producer、调度、ACK、重试、重放、责任边界和读回证据。
- 统一写入方案准备:先梳理重复写、乱序覆盖、部分成功和投影不同步等可优化点,再明确事实源、字段 owner、事件唯一键、幂等和版本覆盖规则。
- 日志和存储性能治理:降低 Robot/AI 无效日志量,按可执行步骤推进 Mongo、MySQL、Redis 慢查询优化。
关键依赖与并行关系
flowchart LR
A["MQ/Mongo 多类型梳理<br/>30%"] --> B["统一 Mongo 写入和有序化设计"]
B --> C["商品报价独立缓存"]
B --> D["投影补偿与巡检"]
E["Sale Work 阻塞治理<br/>已完成"] --> F["报价接口降级"]
C --> F
G["Mongo/MySQL/Redis<br/>性能基线"] -. 并行 .-> B
G -. 并行 .-> F
机器人数据库业务改造已完成,当前只跟踪并发压测、数据校验和上线验收证据。
本阶段交付物
| 交付物 | 对应任务 | 交付内容 |
|---|---|---|
| MQ/Mongo 入口台账 | 梳理 | 类型、代码位置、入参、写入字段、调度、责任人和下游影响 |
| 统一写入设计 | 有序化 | 事件契约、Inbox/任务状态、幂等键、版本更新、补偿和重放 |
| Sale Work 稳定性验收 | Sale | 阻塞场景、根因、Worker 指标、超时/并发控制、压测和回归结果 |
| 存储性能基线 | 慢查询 | 三类存储 Top N、P95、索引命中、锁等待、连接和内存指标 |
| 缓存迁移方案 | 独立缓存 | 依赖、容量/索引、双写/影子校验、灰度、回滚和读回验证 |
| 稳定性验收报告 | 全部改造 | 正常、重复、乱序、超时、部分失败、重试和页面降级结果 |
进度与验收口径
完成:业务改造、核心测试、回滚方案和必要监控均已验证。完成(验收收尾):业务改造已经完成,只剩压测、数据校验或上线材料未闭环。- 百分比按“已验证子任务数 / 全部子任务数”计算,不按代码行数估算;MQ/Mongo 当前 30% 以入口台账和链路首版为依据。
- 每次更新只改第一张表,并补充代码、测试、压测、读回或监控证据;生产稳定运行后才标记为
完成。
详细资料
- 本地总计划:
/Users/zhoujiangbin/code/docker-dev-env/www/dgj2.0/doc/ai/mongo/04-stability-upgrade-plan-and-progress.md - 18 个入口代码证据:
doc/ai/mongo/appendix/code-evidence.md - 三条 MQ 文档:
doc/ai/mq/clear/README.md - 主同步、修复脚本和排查手册:
doc/ai/mongo/cli/、repair/、runbook/ - 上周汇报原件:
/Users/zhoujiangbin/Downloads/站管家稳定性升级方案的汇报.pptx