MyException - 我的异常网
当前位置:我的异常网» 软件架构设计 » 关于账号系统是否应该控制重复请求的有关问题

关于账号系统是否应该控制重复请求的有关问题

www.MyException.Cn  网友分享于:2014-08-07  浏览:1次
关于账号系统是否应该控制重复请求的问题
案例:
用户发起提现100元。

业务关键步骤:
1、检查用户可用余额是否大于等于100元
2、冻结用户余额100元
3、向银行发起100元转账请求
4、更新用户冻结余额

这几个关键步骤都有异常处理要求,这里重点要讨论的是第2步骤自身有无必要控制重复请求风险。

交易系统向账户系统发起冻结请求,本身会控制重复请求,但也可能存在漏洞。在这种情况下,如果账户系统冻结服务本身没有重复请求控制处理,就会出现数据差错。如果同一笔冻结请求发送了多次,会出现哪些情况?

目前一种观点是账户系统无需控制重复请求,主要理由如下:
1、会影响账户系统性能
2、交易系统与账户系统在同一个应用,前端控制就可以
3、如果账户系统控制了,前端就不用管了。

另一种观点是需要做重复控制:
1、对账户系统性能有影响是伪命题。
a、账户系统性能必须足够支撑这种业务需要。
b、前端判断是否重复,需要调用账户查询功能。
2、不管是二个不同应用接口,还是一个应用内部不同接口,都应该尽力保证接口自身的数据一致性。
3、接口本身应该尽可能独立,减少耦合性。
4、交易、账户都应该控制此类异常情况。

在与银行系统对接时,同一个转账请求(同一个流水号),只能发起一次,否则银行是不允许的。在做证券交易时,柜台也对交易请求进行重复提交的控制。所以个人认为对外服务接口是有必要自身控制重复请求异常的。

还请大家指点指点,谢谢。

文章评论

老程序员的下场
老程序员的下场
鲜为人知的编程真相
鲜为人知的编程真相
代码女神横空出世
代码女神横空出世
中美印日四国程序员比较
中美印日四国程序员比较
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
编程语言是女人
编程语言是女人
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
程序员的鄙视链
程序员的鄙视链
程序员和编码员之间的区别
程序员和编码员之间的区别
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
总结2014中国互联网十大段子
总结2014中国互联网十大段子
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
程序员都该阅读的书
程序员都该阅读的书
我的丈夫是个程序员
我的丈夫是个程序员
一个程序员的时间管理
一个程序员的时间管理
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
Java程序员必看电影
Java程序员必看电影
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
那些争议最大的编程观点
那些争议最大的编程观点
为什么程序员都是夜猫子
为什么程序员都是夜猫子
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
程序员应该关注的一些事儿
程序员应该关注的一些事儿
我是如何打败拖延症的
我是如何打败拖延症的
程序员必看的十大电影
程序员必看的十大电影
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
 程序员的样子
程序员的样子
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
漫画:程序员的工作
漫画:程序员的工作
每天工作4小时的程序员
每天工作4小时的程序员
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
10个调试和排错的小建议
10个调试和排错的小建议
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有