• daxiong

    链路:订单系统 → 中间层 → 仓库系统 → 通知。

    设计要点:

    1. 中间层做幂等。订单号做唯一键,重复推送直接忽略。
    2. 每步落库。收到、处理中、成功、失败四个状态,出问题能查。
    3. 失败重试指数退避。1 分钟、5 分钟、30 分钟,三次都失败进人工队列。
    4. 通知走异步。别让通知失败影响主流程。

    踩过的坑:最开始没做幂等,仓库系统重试机制导致发了两遍货。加上唯一键之后解决。

    这套结构换成任何两个系统对接都适用,核心就三件事:幂等、状态落库、重试有上限。

    主楼
  • alan

    补充一点,日志里记得记 trace id,不然跨服务查不动。

    #1

发表回复

登录后回复