【更新预告】EMSHOP发货队列将支持阶梯重试与失败兜底机制

图片[1]-【更新预告】EMSHOP发货队列将支持阶梯重试与失败兜底机制

队列任务不是每次都一帆风顺。上游接口偶尔抽风、网络抖动、卡密临时不足……这些临时性问题如果不处理,任务就直接失败了。

在EMSHOP的底层重构中,队列消费者内置了阶梯重试机制。

当一个发货任务执行失败时,消费者不会立即放弃。它会在任务记录中增加重试次数(attempts),并根据次数计算下一次重试时间:

  • 第1次失败:30秒后重试。
  • 第2次失败:2分钟后重试。
  • 第3次失败:5分钟后重试。

重试间隔逐次递增,给上游系统留出恢复时间,也避免频繁重试造成资源浪费。

达到上限后怎么办?
最大重试次数默认为3次,管理员可配置。当重试次数达到上限仍失败时,任务状态变为“failed”,停止自动重试。此时系统会向管理员发送通知,管理员可在后台“发货失败订单”列表中查看,并决定是手动重试还是退款。

为什么需要阶梯重试?
临时故障不该导致订单永久失败。阶梯重试用时间换成功率,最大程度保证订单最终能发货。只有真正无法自动解决的问题,才交给人来处理。

很小的机制,但让发货从“一锤子买卖”变成了“不轻言放弃”。

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容