回调一致性设计

描述: 当A订单下单到M服务器,则A订单的回调也应该在M服务器

不同渠道的回调样式有很多种,例如:

支付宝

https://xxx/alidutpaynewSyncNotify?is_success=T&ord_buyer_id=2088502815211504&ord_id=2016071900001000500090504099&ord_id_ext=16071989194099080234&ord_seller_id=2088801029475732&ord_status=TRADE_SUCCESS&req_info_extra=null&service=alipay.acquire.pay.plus.page.sign&sign_id_ext=16071989194099260235&sign=20bab1ac022caf4c818a45bd8c3733d3&sign_type=MD5

捷迅

http://xxx/ext19payresp?version_id=2.0&merchant_id=2720&order_date=20100813&order_id=&amount=20&currency=RMB&pay_sq=123456&pay_date=20100813&pc_id=CMJFK00010001&result=Y&merchant_key=123456789&pm_id=CMJFK&pay_cardno=123456789cardno&pay_cardpwd=123456789cardpwd&verifystring=8d89e320a7c514f5edd69afbd62ab9a3

有一些渠道甚至参数都是加密的

如何优雅的算法,回调的一致性转发逻辑。
hash一致性?ip判断?不用每次解密拿到订单号,再和数据库里对比,找到上次分发的机器吧?

阅读 2.6k
1 个回答

策略模式。。。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进