标签:page img statement embed -o ipa 设置 银联 throwable
& 接受对业务系统的订单支付.充值请求
& 账户之间转账
& 接受业务系统的提现请求
& 接受业务系统的退款请求(对上面几种业务)
负责和渠道(支付宝,微信,银联)交互,记录流水号,对账
& 记录账户信息
& 保障账户变动原子性和事务性.
& 记录账户变动流水
1. 充值
2. 转账
2. 提现
Account 账户信息.
Account_statement: 1.记录账户变动流水记录. 2.保存法幂等控制
trade_detail: 交易信息记录,例如 from账户,to账户,通过什么途径充值.
trade: 记录外部输入的外部流水号和内部流水号.
trade_record_flow_statement: 1.记录交易记录变更流水历史. 比如转账的退款总金额变更流水记录.2.保存法幂等控制
1. 转账的额度控制通过变量传递进来.
转账停留在中间环节的,重试逻辑. 单边帐
2. 帐户的变动和流水保存处于同一个事务中.
切记 spring 的事务注解 , 异常必须设置为 throwable
3. 提现:
先扣帐户款再提现.
银行有恶心的退票记录
4. 帐户的高并发变更设计:
高并发帐户不时时扣款.
标签:page img statement embed -o ipa 设置 银联 throwable
原文地址:http://www.cnblogs.com/fei33423/p/7494032.html