04-消息管理
消息管理模块用于记录规则中心与业务系统之间的异步消息传递详情,解决未引入分布式事务场景下的数据一致性问题。
为什么需要消息管理
当规则中心的数据发生变更(如规则配置修改、业务绑定变更)时,需要通知各业务系统进行相应的数据同步。由于规则中心与业务系统是独立的微服务,无法使用本地事务保证数据一致性,因此采用 Kafka 消息队列 进行异步通知。
消息管理模块的作用:
- 记录消息状态:追踪每条消息的发送和处理结果
- 失败重试:对处理失败的消息支持手动重发
- 问题排查:记录异常信息,便于定位问题
1. 消息列表
消 息列表展示了规则中心发送给业务系统的所有消息记录。

1.1 列表字段说明
| 字段 | 说明 |
|---|---|
| ID | 消息记录主键 |
| 父ID | 父消息ID,0表示原始消息,非0表示子消息(按业务类型拆分) |
| 规则ID | 关联的规则ID |
| 消息唯一标识 | 消息的全局唯一标识,用于幂等处理 |
| 业务类型 | 消息对应的业务类型 |
| 业务ID | 业务记录ID(如任务ID、广告ID等) |
| 消息 | 消息内容(JSON格式) |
| 状态 | 消息处理状态 |
| 已重发次数 | 消息重试次数 |
| kafka主题 | 消息发送的Kafka主题 |
| 异常消息 | 处理失败时的异常信息 |
| 创建时间 | 消息创建时间 |
1.2 业务类型

| 业务类型 | 说明 |
|---|---|
| 任务推送 | 任务推送业务的消息 |
| launcher广告配置 | Launcher广告配置的消息 |
| 黑名单 | 黑名单业务的消息 |
| uota升级 | UOTA升级业务的消息 |
| 域名分发之域名 | 域名分发业务的消息 |
| 域名分发之UOTA | 域名分发关联UOTA的消息 |
1.3 消息状态
| 状态 | 说明 |
|---|---|
| 待处理 |