专栏名称: 凤凰牌老熊
互联网金融,软件架构,资深Java工程师
目录
相关文章推荐
芋道源码  ·  别乱分层,PO、VO、DAO、BO、DTO、 ... ·  4 小时前  
芋道源码  ·  if 判断泛滥?试一试规则执行器,太香了! ·  4 小时前  
芋道源码  ·  一款轻便、安全、免费的远程桌面工具 ·  19 小时前  
芋道源码  ·  Spring Boot 3.2 ... ·  昨天  
Java编程精选  ·  成年人欲望程度排行榜TOP 10 ·  2 天前  
51好读  ›  专栏  ›  凤凰牌老熊

20170706-银行快捷双活架构

凤凰牌老熊  · 公众号  · Java  · 2017-07-11 22:46

正文

请到「今天看啥」查看全文


咱们又回到最初的大外围小核心的架构上,快捷支付把大量的计算工作放在开放上,如鉴权,记流水,计算手绪费等,到主机上只做两件事,卡转账,记账。

由于在高并发的情况下,主机处理不过来或是响应变慢,指定时间内无回应,为了提高响应效率,利用柔性事务的原则,开放端首先返回成功状态给第三方支付机构,开放端记一个交易状态不确定。随后由开放端去主机上查证交易结果状成。主机端要是成功,无问题; 主机端要是失败,开放端返回成功,则形成了差错。这就需要线下由银行内营人员手工处理。这就是差错产生的根本原因。

1.6 快捷支付资金清算与对账

  • 资金清算

在X银行,快捷支付不存在他行的卡,而一般第三方支付机都在X银行开设了备付金账户。快捷支付的实质,就是将客户的钱转到第三方支付机构的备付金账户。因此白天客户支付,将客户的钱转入一个过渡的内部中间户头,日终结束后,再根据白天主机记账结果,将钱从中间户头打入支付机构备付金账户。这就是资金清算的处理,比较简单。

  • 对账

至于对账,银行只出对账单不对账,由第三方支付机构,根据银行出的对账单与划入的资金,与第三方机构自身的流水进行勾兑。如果发生问题,银行配合第三方支付机构进行排查。

1.7 实践效果

在银行这里看,快捷90%的业务量都在,X付宝与财付通,而且出于利润来说,银行欢迎双十一,不喜欢红包雨。

二、 在线问答

Q:冒昧问下,你们做到9kTPS整个集群数量大概多少?

A:主中心30台,备中心30台,共60台

Q:是双十一tps最高吗?

A:春节,比较不爽,过年。。。(小额红包来的应该最猛)

Q:最高TPS为啥要设计到9k这么高 比峰值翻倍?

A:不是设计成那么高,是业务要求,和阿里压测的时候,到了1.2W

Q:你们做到9kTPS整个集群数量大概多少?

A:60台,每台300联接数


Q:主备之间的数据同步是什么技术处理的?

A:oracle ADG(细节请百度)


Q:银行快捷收费都是按交易金额算的么?不是按交易笔数?

A:打包按总金额收


Q:备中心也处理用户请求,数据双向同步?

A:单向,你仔细看我的图,备中心4号库是主库

Q:备中心是仅仅备份数据比他对账单,还是也要处理支付请求?

A:备中心设有一个主库,分1/4的业务


Q:那个分发用到什么算法吗,取模吗?

A:这个算法我就不细说了,有卡号了分表就很容易了


Q:分库分表用的是什么技术和框架?







请到「今天看啥」查看全文