积分兑换系统

2023-10-31 16:48:34 +08:00
 coderMonkey

公司开发了一套积分系统计划与银行对接的,就是我们这边系统参加活动可以获得积分,获得的积分可以换取银行的积分,银行积分可以兑换商品 这块设计思路有大佬碰到做过的吗,或者网上有啥好的例子嘛 主要考虑的几点

1430 次点击
所在节点    程序员
11 条回复
BeforeTooLate
2023-10-31 16:54:35 +08:00
问题是银行怎么给你们对接
Conantv2
2023-10-31 16:57:54 +08:00
这不就是最基础的增删查改吗,没啥难度啊,只是细节需要注意,特别是鉴权和并发扣减锁定,但是细节这种东西也没法几句话说清楚。
tomatocici2333
2023-10-31 17:46:57 +08:00
借鉴一下支付系统要注意的就好了
aLazarus
2023-10-31 17:49:29 +08:00
还有接口幂等性
oldking24
2023-10-31 18:49:51 +08:00
分布式事务
lekai63
2023-11-01 10:12:14 +08:00
楼上是要蹲一个开源方案吗?
lekai63
2023-11-01 10:12:34 +08:00
@lekai63 说错了。修正:
OP 是要蹲一个开源方案吗?
coderMonkey
2023-11-01 10:31:50 +08:00
@lekai63
@tomatocici2333
@BeforeTooLate
公司是让我负责跟银行对接,商讨双方对接方案,比如如何鉴权,我这边积分扣减,银行积分增加如何保证一致等这些问题,不能出现银行多次扣减,我这边积分没有扣减的情况,类似种种。我觉得目前应该有这种成熟的方案了,就是不知道怎么找
yogogo
2023-11-01 16:16:55 +08:00
事务开始,积分余额表悲观锁用户行,扣减用户积分,提交到银行,等待银行处理结果,成功提交事务,失败回滚事务
pigf
2023-11-01 17:03:42 +08:00
往来的接口都需要对参数做非对称加密,每笔交易都有一个唯一 id 标识,并且消费端要允许重复消费,消费端接收到消息之后需要通知生产端,ack 掉这条消息,否则生产端在发送之后的一段时间之内需要重发,知道消息消费成功,或者失败(触发失败通知)
kkk9
2023-11-01 19:01:37 +08:00
获得的积分可以换取银行的积分,银行积分可以兑换商品

如果你只负责公司系统,后面的银行积分兑换商品不归你负责的话,悲观锁设计,

用户积分->银行积分->等待回调->失败回滚,成功应用。剩下的都和你没关系,银行头痛去。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/987164

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX