| 剥离 | 识别可异步动作,给用户即时确认加稍后完成 |
|---|---|
| 时效 | 定义端到端完成时限并监控积压与最老消息 |
| 补偿 | 异步失败要有重试与人工兜底入口 |
- 识别对象:请求链路中的通知、导出与结算等耗时动作
- 接口剥离:先落库并返回受理结果与任务标识
- 可靠投递:用事务性发件箱保证事件不丢失
- 消费治理:重试与幂等消费,失败转死信
- 结果回传:提供查询接口或回调通道告知最终状态
- 时效监控:跟踪积压量与积压时长,超限告警
| 资源隔离 | 批量任务使用独立队列与并发配额,避免抢占核心链路容量 |
|---|---|
| 用户预期 | 受理结果里说明处理中的状态与查询方式,减少重复提交 |
| 查询防护 | 任务状态查询接口限流并校验归属,防止轮询压垮系统 |
|---|---|
| 积压预案 | 积压超阈值时扩容消费者,或暂停非关键任务让路 |
异步化的代价是最终一致:涉及金额与库存的操作,先确认业务能接受延迟入账。