一种分布式记账方法、设备及系统技术方案

技术编号:21549233 阅读:34 留言:0更新日期:2019-07-06 22:14
本发明专利技术提供了一种分布式记账方法、分布式记账系统、计算机设备以及计算机可读存储介质,涉及金融技术领域。该方法包括:主服务器根据一业务请求报文调用所述第一从服务器的try接口以及所述第二从服务器的try接口;第一从服务器根据账户合法性、账户状态以及可用余额输出第一try接口返回信息;第二从服务器根据账户合法性以及账户状态输出第二try接口返回信息;事务管理器根据所述第一try接口返回信息以及所述第二try接口返回信息调用所述第一从服务器以及所述第二从服务器,以实现与业务请求报文对应的业务。本发明专利技术实现了当部分节点故障时,能够保障业务连续性不受影响,同时避免集中式架构依赖高端软硬件设备的弊端。

A Distributed Accounting Method, Equipment and System

【技术实现步骤摘要】
一种分布式记账方法、设备及系统
本专利技术关于金融
,特别是关于金融领域中的支付技术,具体的讲是一种分布式记账方法、分布式记账系统、计算机设备以及计算机可读存储介质。
技术介绍
本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。二代支付系统上线后,为适应商业银行数据大集中趋势的需求,其接入方式由多点接入、多点清算过渡为一点接入、一点清算。第二代支付系统目前能支持的峰值为每小时50万次的单一账户访问量,超过商业银行峰值的最大业务量,能够满足当前的业务处理需求。但是随着我国社会经济快速发展,经济规模不断扩大,交易活动日益频繁,在可预见的未来,大型商业银行在高峰时业务量有可能突破每小时50万笔,导致单一清算账户成为热点账户。目前支付系统更多的采用集中式架构,如图16所示,其特点是架构简捷稳定,便于纵向扩展与管理,技术成熟,但是集中式架构对高端设备依赖较强,业务连续性指标有待加强。集中式账户记账时所有清算账户数据均部署在主机节点上,清算系统收到交易系统提交的支付清算报文后,逐笔实时锁定借贷记账户,进行清算处理。如果可用头寸足够支付的立即做账务处理。可用头寸不足时,将该清算指令纳入清算排队处理,清算系统实时返回该清算回执报文,同一商业银行的所有清算报文串行处理。集中式架构存在如下的技术缺陷:1)不支持分布式部署和分布式事务单机部署单点故障风险高,不符合业务连续性需求,随着我国社会经济的快速发展,日益频繁的交易活动对业务连续性、可靠性的需求更高;为最大程度保障支付系统安全稳定,要求分布式部署,提升处理性能,保证业务连续性需求。2)资源利用率低,性能待进一步提高集中记账清算时,采用XA事务的两阶段提交,数据库操作时需同时锁定借贷记账户的所有余额,不利于账户资源的充分应用;大部分支付业务集中在少数几大行之间,随着业务量的增长,系统清算处理存在性能瓶颈。3)依赖高端软硬件设备,不符合国家自主可控的要求集中式架构对高端软硬件设备依赖较强,无法灵活适应多样化灵活部署的需求,也不适应国家对关键业务信息系统自主可控的安全要求。因此,如何提供一种新的方案,其能够克服上述技术缺陷是本领域亟待解决的技术难题。
技术实现思路
有鉴于此,本专利技术实施例提供了一种分布式记账方法、分布式记账系统、计算机设备以及计算机可读存储介质,通过采用开源事务框架TCC来协调借贷分离的分布式事务,提高了业务连续性,通过分布式改造,提高了系统健壮性,实现了当部分节点故障时,能够保障业务连续性不受影响,同时避免了集中式架构依赖高端软硬件设备的弊端。本专利技术的目的之一是,提供一种分布式记账系统,包括主服务器、事务管理器、第一从服务器以及第二从服务器,所述第一从服务器以及第二从服务器均包括try接口、confirm接口和cancel接口,所述confirm接口和所述cancel接口幂等;所述主服务器,用于根据一业务请求报文调用所述第一从服务器的try接口以及所述第二从服务器的try接口,所述业务请求报文对应的账户数据位于不同类型的从服务器的数据库实例中;所述第一从服务器,用于根据账户合法性、账户状态以及可用余额输出第一try接口返回信息;所述第二从服务器,用于根据账户合法性以及账户状态输出第二try接口返回信息;所述事务管理器,用于根据所述第一try接口返回信息以及所述第二try接口返回信息调用所述第一从服务器以及所述第二从服务器,以实现与所述业务请求报文对应的业务。在本专利技术的优选实施方式中,所述主服务器包括:请求报文接收模块,用于接收所述业务请求报文;请求报文检查模块,用于对所述业务请求报文的报文格式、业务合法性以及账户状态进行检查;业务凭证记录模块,用于当所述请求报文检查模块检查通过时,记录业务凭证;服务接口调用模块,用于当所述请求报文检查模块检查通过时,调用第一从服务器的try接口以及所述第二从服务器的try接口。在本专利技术的优选实施方式中,所述第一从服务器包括:第一账户检查模块,用于对所述第一从服务器的账户合法性、账户状态以及可用余额进行检查;业务金额冻结模块,用于当所述第一账户检查模块检查通过时,根据所述可用余额冻结业务金额;第一信息输出模块,用于根据所述第一账户检查模块以及所述业务金额冻结模块输出第一try接口返回信息。在本专利技术的优选实施方式中,所述第一信息输出模块包括:接口正常输出模块,用于当所述业务金额冻结模块冻结业务金额成功时输出try接口正常的第一try接口返回信息;接口异常输出模块,用于当所述第一账户检查模块检查未通过或所述业务金额冻结模块冻结业务金额失败时输出try接口异常的第一try接口返回信息。在本专利技术的优选实施方式中,所述第二从服务器包括:第二账户检查模块,用于对所述第二从服务器的账户合法性以及账户状态进行检查;第二信息输出模块,用于当所述第二账户检查模块检查未通过时输出所述第二从服务器的try接口异常的第二try接口返回信息,当所述第二账户检查模块检查通过时输出所述第二从服务器的try接口正常的第二try接口返回信息。在本专利技术的优选实施方式中,所述事务管理器包括:返回信息接收模块,用于接收所述第一try接口返回信息以及所述第二try接口返回信息;返回信息解析模块,用于解析所述第一try接口返回信息以及所述第二try接口返回信息得到解析结果;第一接口调用模块,用于当所述解析结果显示所述第一try接口返回信息的try接口正常以及所述第二try接口返回信息的try接口正常时,调用所述第一从服务器的confirm接口以及所述第二从服务器的confirm接口;第二接口调用模块,用于当所述解析结果显示所述第一try接口返回信息的try接口异常和/或所述第二try接口返回信息的try接口异常时,调用所述第一从服务器的cancel接口以及所述第二从服务器的cancel接口。在本专利技术的优选实施方式中,所述第一从服务器,还用于通过confirm接口对所述账户余额进行扣减,对冻结的业务金额进行释放并记录账务明细;所述第二从服务器,还用于通过confirm接口对所述账户余额进行增加并记录账务明细;所述主服务器还包括第一凭证更新模块,用于当所述解析结果显示所述第一try接口返回信息的try接口正常以及所述第二try接口返回信息的try接口正常时,将所述业务凭证更新为业务状态为已清算。在本专利技术的优选实施方式中,所述第一从服务器,还用于当冻结业务金额成功时通过cancel接口对冻结金额进行释放;所述第二从服务器,还用于通过cancel接口针对try阶段事务幂等性回滚;所述主服务器还包括第二凭证更新模块,用于当所述解析结果显示所述第一try接口返回信息的try接口异常和/或所述第二try接口返回信息的try接口异常时,将所述业务凭证更新为业务状态为已失败。本专利技术的目的之一是,提供一种分布式记账方法,包括:所述主服务器根据一业务请求报文调用所述第一从服务器的try接口以及所述第二从服务器的try接口,所述业务请求报文对应的账户数据位于不同类型的从服务器的数据库实例中;所述第一从服务器根据账户合法性、账户状态以及可用余额输出第一try接口返回信息;所述第二从服务器根据账户合法性以及账户状态输出第二t本文档来自技高网
...

【技术保护点】
1.一种分布式记账系统,其特征在于,所述系统包括主服务器、事务管理器、第一从服务器以及第二从服务器,所述第一从服务器以及第二从服务器均包括try接口、confirm接口和cancel接口,所述confirm接口和所述cancel接口幂等,所述主服务器,用于根据一业务请求报文调用所述第一从服务器的try接口以及所述第二从服务器的try接口,所述业务请求报文对应的账户数据位于不同类型的从服务器的数据库实例中;所述第一从服务器,用于根据账户合法性、账户状态以及可用余额输出第一try接口返回信息;所述第二从服务器,用于根据账户合法性以及账户状态输出第二try接口返回信息;所述事务管理器,用于根据所述第一try接口返回信息以及所述第二try接口返回信息调用所述第一从服务器以及所述第二从服务器,以实现与所述业务请求报文对应的业务。

【技术特征摘要】
1.一种分布式记账系统,其特征在于,所述系统包括主服务器、事务管理器、第一从服务器以及第二从服务器,所述第一从服务器以及第二从服务器均包括try接口、confirm接口和cancel接口,所述confirm接口和所述cancel接口幂等,所述主服务器,用于根据一业务请求报文调用所述第一从服务器的try接口以及所述第二从服务器的try接口,所述业务请求报文对应的账户数据位于不同类型的从服务器的数据库实例中;所述第一从服务器,用于根据账户合法性、账户状态以及可用余额输出第一try接口返回信息;所述第二从服务器,用于根据账户合法性以及账户状态输出第二try接口返回信息;所述事务管理器,用于根据所述第一try接口返回信息以及所述第二try接口返回信息调用所述第一从服务器以及所述第二从服务器,以实现与所述业务请求报文对应的业务。2.根据权利要求1所述的系统,其特征在于,所述主服务器包括:请求报文接收模块,用于接收所述业务请求报文;请求报文检查模块,用于对所述业务请求报文的报文格式、业务合法性以及账户状态进行检查;业务凭证记录模块,用于当所述请求报文检查模块检查通过时,记录业务凭证;服务接口调用模块,用于当所述请求报文检查模块检查通过时,调用第一从服务器的try接口以及所述第二从服务器的try接口。3.根据权利要求1所述的系统,其特征在于,所述第一从服务器包括:第一账户检查模块,用于对所述第一从服务器的账户合法性、账户状态以及可用余额进行检查;业务金额冻结模块,用于当所述第一账户检查模块检查通过时,根据所述可用余额冻结业务金额;第一信息输出模块,用于根据所述第一账户检查模块以及所述业务金额冻结模块输出第一try接口返回信息。4.根据权利要求3所述的系统,其特征在于,所述第一信息输出模块包括:接口正常输出模块,用于当所述业务金额冻结模块冻结业务金额成功时输出try接口正常的第一try接口返回信息;接口异常输出模块,用于当所述第一账户检查模块检查未通过或所述业务金额冻结模块冻结业务金额失败时输出try接口异常的第一try接口返回信息。5.根据权利要求4所述的系统,其特征在于,所述第二从服务器包括:第二账户检查模块,用于对所述第二从服务器的账户合法性以及账户状态进行检查;第二信息输出模块,用于当所述第二账户检查模块检查未通过时输出所述第二从服务器的try接口异常的第二try接口返回信息,当所述第二账户检查模块检查通过时输出所述第二从服务器的try接口正常的第二try接口返回信息。6.根据权利要求5所述的系统,其特征在于,所述事务管理器包括:返回信息接收模块,用于接收所述第一try接口返回信息以及所述第二try接口返回信息;返回信息解析模块,用于解析所述第一try接口返回信息以及所述第二try接口返回信息得到解析结果;第一接口调用模块,用于当所述解析结果显示所述第一try接口返回信息的try接口正常以及所述第二try接口返回信息的try接口正常时,调用所述第一从服务器的confirm接口以及所述第二从服务器的confirm接口;第二接口调用模块,用于当所述解析结果显示所述第一try接口返回信息的try接口异常和/或所述第二try接口返回信息的try接口异常时,调用所述第一从服务器的cancel接口以及所述第二从服务器的cancel接口。7.根据权利要求6所述的系统,其特征在于:所述第一从服务器,还用于通过confirm接口对所述账户余额进行扣减,对冻结的业务金额进行释放并记录账务明细;所述第二从服务器,还用于通过confirm接口对所述账户余额进行增加并记录账务明细;所述主服务器还包括第一凭证更新模块,用于当所述解析结果显示所述第一try接口返回信息的try接口正常以及所述第二try接口返回信息的try接口正常时,将所述业务凭证更新为业务状态为已清算。8.根据权利要求6所述的系统,其特征在于:所述第一从服务器,还用于当冻结业务金额成功时通过cancel接口对冻结金额进行释放;所述第二从服务器,还用于通过cancel接口针对try阶段事务幂等性回滚;所述主服务器还包括第二凭证更新模块,用于当所述解析结果显示所述第一try接口返回信息的try接口异常和/或所述第二tr...

【专利技术属性】
技术研发人员:景婉婧肖鹏王齐李翠平张兰兰王明媚
申请(专利权)人:银清科技北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1