支付回调消息的分布式锁设计
业务系统接收支付系统发送的MQ消息,然后推动业务逻辑及订单状态的处理。 如果非正常情况下,支付系统接收到多次第三方支付系统的多次回调,导致会发送多次MQ消息。 导致业务系统支付数据等重复操作。
首先需要做支付通知后的幂等处理(接收端) 其次是对接收到的消息做分布式锁,避免消息的重复。可以将支付ID,支付方式(支付or退款),支付流水号(qn)作为联合key来锁定。
最后可以在MQ发送端做控制,也可以达到目的。
本文分享自 作者个人站点/博客 前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!