feat: MQ文档补充

This commit is contained in:
2026-07-15 11:29:12 +08:00
parent 89a48a98aa
commit 8ef5abc262
4 changed files with 393 additions and 8 deletions

View File

@@ -1,10 +1,10 @@
# 缓存序列化结构变更检测 — 实施方案
# 序列化结构变更检测 — 实施方案
> 版本v0.2
> 日期2026-07-14
> 版本v0.3
> 日期2026-07-15
> 技术栈Java 11 + Maven + JavaParser
> 目标仓库:`redisCheck`(工具) / `jnpf-java-cloud`(被检测业务仓库)
> 当前阶段:**Phase 1 + Phase 2 已完成**Phase 3 待做
> 目标仓库:`schemaCheck`(工具) / `jnpf-java-cloud`(被检测业务仓库)
> 当前阶段:**Phase 1 + Phase 2 已完成**Phase 3 运营待做;**MQ 扩展方案已文档落地**(见 `docs/MQ序列化结构检测方案.md`
---
@@ -175,7 +175,8 @@ schemaCheck/
├── docs/
│ ├── 实施方案.md
│ ├── 配置说明.md
── CI集成说明.md
── CI集成说明.md
│ └── MQ序列化结构检测方案.md # MQ 消息体 Schema 扩展(方案)
├── src/
│ ├── main/
│ │ ├── resources/
@@ -534,6 +535,23 @@ notify:
| 误报反馈 | `suppressions` 按写入点 / change_types 精细忽略 |
| 更多业务场景覆盖 | 考勤、文件下载进度等 |
### Phase 4 — MQ 消息体结构检测(方案已落地,含 Kafka开发待启
业务仓同时存在:
- **RocketMQ**`RocketMQTemplate.syncSend(topic:tag, dto)` / `RocketMQListener<T>`
- **Kafka**`KafkaTemplate.send(topic, vo|List)` / `@KafkaListener` + `parseObject`
消息体字段变更会导致积压旧消息反序列化失败,风险模型与 Redis 同类。
| 任务 | 说明 | 状态 |
|------|------|------|
| 方案文档 | RocketMQ + Kafka 模式、destination、复用 Schema Diff/企微 | ✅ 见专用文档 |
| Phase M1 | RocketMQ syncSend + Kafka send + 骨架通知 + 夹具 | 待启 |
| Phase M2/M3 | Listener/parse 补强、更多投递形态、运营 | 待启 |
**专用方案:** [`docs/MQ序列化结构检测方案.md`](./MQ序列化结构检测方案.md)
---
## 11. 测试策略
@@ -587,7 +605,15 @@ notify:
| 4 | 上线策略 | 先 `notify` ,稳定后手动切 `block` |
| 5 | 检测范围 | **仅 `src/main/java`**,不扫描测试代码 |
以上决策已纳入实施方案;**Phase 1 / Phase 2 已交付**可进入 Phase 3 或业务仓全量观察
以上决策已纳入实施方案;**Phase 1 / Phase 2 已交付**。缓存侧可进入 Phase 3MQ 侧以 [`MQ序列化结构检测方案.md`](./MQ序列化结构检测方案.md) 为准评审后开发
相关文档:
| 文档 | 内容 |
|------|------|
| `docs/配置说明.md` | 缓存检测双层配置 |
| `docs/CI集成说明.md` | 流水线 before/after、排障 |
| `docs/MQ序列化结构检测方案.md` | MQ 消息体 Schema 监控方案(扩展) |
---