本文目录#

引言#

消息系统天然存在重试与重放,微服务必须具备幂等能力。本文总结幂等策略、重放机制与审计设计。

幂等策略#

  • 幂等键:业务ID、订单号;
  • 数据库 unique 索引或 UPSERT;
  • Redis Set/Bitmap 记录处理过的消息;
  • Token Bucket + 幂等缓存。

重放设计#

  • 保留消息 log,支持重放;
  • 通过控制台触发重放;
  • 确保重放可控(时间范围、租户);
  • 记录重放操作审计。

审计与监控#

  • 记录消费状态(成功、失败、重试);
  • 对异常消息报警;
  • 与消息轨迹联动;
  • 定期清理幂等缓存。

总结#

幂等与重放是消息驱动微服务的生命线。通过周密的策略与监控,可保障业务的一致性与可恢复性。

参考资料#

  • [1] Designing Data-Intensive Applications (Martin Kleppmann).

本作品系原创,采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,转载请注明出处。