CN112950349B - 一种基分布式***冲正交易时序异常处理方法及*** - Google Patents
一种基分布式***冲正交易时序异常处理方法及*** Download PDFInfo
- Publication number
- CN112950349B CN112950349B CN202110165756.1A CN202110165756A CN112950349B CN 112950349 B CN112950349 B CN 112950349B CN 202110165756 A CN202110165756 A CN 202110165756A CN 112950349 B CN112950349 B CN 112950349B
- Authority
- CN
- China
- Prior art keywords
- transaction
- routing information
- positive
- obtaining
- flushing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基分布式***冲正交易时序异常处理方法及***,获得第一正交易;根据所述第一正交易,获得第一路由信息;获得第一事务;通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;将所述第一正交易发送至第一应用部署单元;获得第一冲正交易;根据所述第一冲正交易,获得第二路由信息,第二路由信息为第一冲正交易的随机路由信息;获得第二事务;根据所述第二事务,将第二路由信息同步登记到所述Redis数据库;将所述第一冲正交易发送至第二应用部署单元。解决了现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题。
Description
技术领域
本发明涉及金融交易处理相关领域,尤其涉及一种基分布式***冲正交易时序异常处理方法及***。
背景技术
对于大型银行核心***来说,由于业务种类繁多和业务规模庞大,其分布式核心***会根据自身业务特点、业务量以及技术实现要求,将不同的业务模块进行垂直、水平切分,切分后形成多个数据分片及其应用部署单元,应用路由层则负责将外部服务请求路由到数据所在应用部署单元。外部服务请求包括正交易和可能发生的冲正交易,正交易报文包含交易码、交易流水号和报文体等,应用路由层根据报文体特定要素(如账号等)进行路由计算并发往对应应用部署单元,同时异步登记交易流水号和路由信息;冲正交易一般只有交易码和交易流水号等,没有报文体信息,应用路由层根据交易流水号获取正交易登记的路由信息,发往处理正交易的应用部署单元,如果冲正交易查询不到路由信息则随机路由任一应用部署单元。
但本申请发明人在实现本申请实施例中发明技术方案的过程中,发现上述技术至少存在如下技术问题:
现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题。
发明内容
本申请实施例通过提供一种基分布式***冲正交易时序异常处理方法及***,解决了现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。
鉴于上述问题,提出了本申请实施例提供一种基分布式***冲正交易时序异常处理方法及***。
第一方面,本申请实施例提供了一种基分布式***冲正交易时序异常处理方法,所述方法包括:获得第一正交易;根据所述第一正交易,获得第一路由信息;获得第一事务;通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;将所述第一正交易发送至第一应用部署单元;获得第一冲正交易;根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;获得第二事务;根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;将所述第一冲正交易发送至第二应用部署单元。
另一方面,本申请还提供了一种基分布式***冲正交易时序异常处理***,所述***包括:第一获得单元,所述第一获得单元用于获得第一正交易;第二获得单元,所述第二获得单元用于根据所述第一正交易,获得第一路由信息;第三获得单元,所述第三获得单元用于获得第一事务;第一同步单元,所述第一同步单元用于通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;第一发送单元,所述第一发送单元用于将所述第一正交易发送至第一应用部署单元;第四获得单元,所述第四获得单元用于获得第一冲正交易;第五获得单元,所述第五获得单元用于根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;第六获得单元,所述第六获得单元用于获得第二事务;第二同步单元,所述第二同步单元用于根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;第二发送单元,所述第二发送单元用于将所述第一冲正交易发送至第二应用部署单元。
第三方面,本发明提供了一种基分布式***冲正交易时序异常处理***,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现第一方面所述方法的步骤。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
由于采用了获得第一正交易,并获得所述第一正交易的第一路由信息,通过第一事务将所述第一路由信息同步登记到Redis数据库,将所述第一正交易发送至第一应用部署单元,获得第一冲正交易,获得所述第一冲正交易的第二路由信息,根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库,将所述第一冲正交易发送至第二应用部署单元。解决了现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
图1为本申请实施例一种基分布式***冲正交易时序异常处理方法的流程示意图;
图2为本申请实施例一种基分布式***冲正交易时序异常处理***的结构示意图;
图3为本申请实施例示例性电子设备的结构示意图。
附图标记说明:第一获得单元11,第二获得单元12,第三获得单元13,第一同步单元14,第一发送单元15,第四获得单元16,第五获得单元17,第六获得单元18,第二同步单元19,第二发送单元20,总线300,接收器301,处理器302,发送器303,存储器304,总线接口306。
具体实施方式
本申请实施例通过提供一种基分布式***冲正交易时序异常处理方法及***,解决了现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。下面,将参考附图详细的描述根据本申请的示例实施例。显然,所描述的实施例仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
对于大型银行核心***来说,由于业务种类繁多和业务规模庞大,其分布式核心***会根据自身业务特点、业务量以及技术实现要求,将不同的业务模块进行垂直、水平切分,切分后形成多个数据分片及其应用部署单元,应用路由层则负责将外部服务请求路由到数据所在应用部署单元。外部服务请求包括正交易和可能发生的冲正交易,正交易报文包含交易码、交易流水号和报文体等,应用路由层根据报文体特定要素(如账号等)进行路由计算并发往对应应用部署单元,同时异步登记交易流水号和路由信息;冲正交易一般只有交易码和交易流水号等,没有报文体信息,应用路由层根据交易流水号获取正交易登记的路由信息,发往处理正交易的应用部署单元,如果冲正交易查询不到路由信息则随机路由任一应用部署单元。但现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题。
针对上述技术问题,本申请提供的技术方案总体思路如下:
本申请实施例提供了一种基分布式***冲正交易时序异常处理方法,所述方法包括:获得第一正交易;根据所述第一正交易,获得第一路由信息;获得第一事务;通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;将所述第一正交易发送至第一应用部署单元;获得第一冲正交易;根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;获得第二事务;根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;将所述第一冲正交易发送至第二应用部署单元。
在介绍了本申请基本原理后,下面将结合说明书附图来具体介绍本申请的各种非限制性的实施方式。
实施例一
如图1所示,本申请实施例提供了一种基分布式***冲正交易时序异常处理方法,其中,所述方法包括:
步骤S100:获得第一正交易;
具体而言,所述是正交易是指银行等金融业务中一笔正向交易。举例而言,所述正交易可以是取款、转账等,获得正交易中的第一正交易。
步骤S200:根据所述第一正交易,获得第一路由信息;
进一步的,所述根据所述第一正交易,获得第一路由信息,本申请实施例步骤S200还包括:
步骤S210:根据所述第一正交易,获得所述第一正交易的第一路由要素;
步骤S220:根据所述第一路由要素,计算获得所述第一路由信息。
具体而言,所述第一路由信息为在应用路由层,在收到正交易请求报文后,从报文体中提取指定路由要素,所述第一路由要素可以是交易码、账号等,根据所述第一路由要素,获取路由配置和索引信息,根据路由配置和索引信息计算出路由信息。
步骤S300:获得第一事务;
步骤S400:通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;
进一步而言,所述通过所述第一事务。将所述第一路由信息同步登记到Redis数据库,本申请实施例步骤S400还包括:
步骤S410:通过所述第一事务判断Redis数据库是否已存在所述第一路由信息;
步骤S420:如果所述Redis数据库不存在所述第一路由信息,通过所述第一事务同步登记所述第一路由信息到Redis数据库。
进一步而言,所述通过所述第一事务判断Redis数据库是否已存在所述第一路由信息之后,本申请实施例步骤S410还包括:
步骤S411:如果所述Redis数据库已经存在所述第一路由信息,获得第一阻断信息;
步骤S412:根据所述第一阻断信息,停止进行所述第一正交易。
具体而言,所述事务是指一个程序执行单元,根据所述第一事务,同步登记所述第一路由信息到Redis数据库,在登记前先判断Redis数据库是否已存在要登记的路由信息,如果已存在,获得第一阻断信息,根据所述第一阻断信息停止第一正交易并返回失败结果;为了解决相同交易流水号的正交易本身以及与冲正交易之间并发登记路由信息的问题,判断路由信息是否已存在和同步登记路由信息必须在一个事务内,可以通过Redis+Lua可以解决两者的一致性问题,当Redis数据库不存在要登记的路由信息时,通过所述第一事务同步登记所述第一路由信息到Redis数据库。
步骤S500:将所述第一正交易发送至第一应用部署单元;
具体而言,同步登记路由信息完成后,在发往应用部署单元之前,异步登记路由信息到Cassandra数据库,当异步登记路由信息完成后,将所述第一正交易发送至第一应用部署单元。
步骤S600:获得第一冲正交易;
步骤S700:根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;
具体而言,所述冲正交易是指对一笔正交易的反交易。举例而言,当取款时,发生超时收不到响应或其它取款结果未知等情况,需要对原始取款发起一笔冲正交易,以保证账务一致性。根据所述第一冲正交易,判断所述Redis数据库是否已存在要登记的路由信息,当不存在时,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息。
步骤S800:获得第二事务;
步骤S900:根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;
步骤S1000:将所述第一冲正交易发送至第二应用部署单元。
具体而言,根据第二事务,从Redis数据库查询路由信息,判断路由信息是否存在,当不存在时,将所述冲正交易的随机路由信息进行同步登记,将所述冲正交易发送至所述随机路由的应用部署单元,即所述第二应用部署单元。通过对所述冲正交易的进行如上述的处理,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。
进一步而言,所述将所述第一正交易发送至第一应用部署单元之前,本申请实施例步骤S500还包括:
步骤S510:将所述第一路由信息异步登记至Cassandra数据库。
进一步而言,本申请实施例还包括:
步骤S520:获得第一数据保存时间,所述第一数据保存时间为所述Redis数据库的数据保存时间;
步骤S530:获得第二数据保存时间,所述第二数据保存时间为所述Cassandra数据库的数据保存时间,其中,所述第二数据保存时间长于所述第一数据保存时间。
具体而言,所述Cassandra数据库是一个混合型的非关系的数据库。在同步登记第一路由信息完成后,在发往应用部署单元之前,异步登记所述第一路由信息到Cassandra数据库。Redis数据库的数据仅保留24小时甚至更短,将所述第一路由信息保存至Redis数据库,可解决效率和并发性能问题;Cassandra数据库的数据保留7天甚至更长,将所述第一路由信息保存至Cassandra数据库可解决容量和可用性等问题。
进一步而言,所述根据所述第一冲正交易,获得第二路由信息,本申请实施例步骤S700还包括:
步骤S710:根据所述第一冲正交易,获得第一交易流水号;
步骤S720:根据所述第一交易流水号,判断所述Redis数据库中是否存在所述第一冲正交易的路由信息;
步骤S730:如果所述Redis数据库中存在所述第一冲正交易的路由信息,将所述第一冲正交易发送至第三应用部署单元。
具体而言,根据所述第一冲正交易,从报文中获得交易流水号,根据所诉第一交易流水号,从Redis数据库查询第一冲正交易的路由信息,当所述Redis数据库存在第一冲正交易的路由信息时,则根据所述第一冲正交易的路由信息直接发往对应的查询出的应用部署单元。
进一步而言,所述根据所述第一交易流水号,判断所述Redis数据库中是否存在所述第一冲正交易的路由信息之后,本申请实施例步骤S720还包括:
步骤S721:如果所述Redis数据库中不存在所述第一冲正交易的路由信息,根据所述第一交易流水号,判断所述Cassandra数据库中是否存在所述第一冲正交易的路由信息;
步骤S722:如果所述Cassandra数据库中存在所述第一冲正交易的路由信息,将所述第一冲正交易发送至第三应用部署单元。
具体而言,如果Redis数据库不存在所述第一冲正交易的路由信息,接着根据第一交易流水号从Cassandra数据库查询所述第一冲正交易的路由信息,如果所述第一冲正交易的路由信息已存在,则根据路由信息直接发往对应的应用部署单元。
进一步而言,所述判断所述Cassandra数据库中是否存在所述第一冲正交易的路由信息之后,本申请实施例步骤S721还包括:
步骤S7211:如果所述Cassandra数据库中不存在所述第一冲正交易的路由信息,根据交易码计算所述第一冲正交易的第二路由信息。
具体而言,所述第二路由信息为随机路由信息,当判断所述Cassandra数据库中不存在所述第一冲正交易的路由信息之后,则根据交易码计算冲正交易的随机路由信息。
进一步而言,所述根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库,本申请实施例步骤S900还包括:
步骤S910:通过所述第二事务判断Redis数据库是否已存在所述第二路由信息;
步骤S920:如果所述Redis数据库不存在所述第二路由信息,通过所述第二事务同步登记所述第二路由信息到Redis数据库。
具体而言,在将所述第二路由信息同步登记到所述Redis数据库之前,首先判断所述Redis数据库是否已存在要登记的第二路由信息,当所述Redis数据库不存在所述第二路由信息时,则将所述第二路由信息同步登记入所述Redis数据库。
进一步而言,所述通过所述第二事务判断Redis数据库是否已存在所述第二路由信息之后,本申请实施例步骤S910还包括:
步骤S911:如果所述Redis数据库已经存在所述第二路由信息,获得第一发送信息;
步骤S912:根据所述第一发送信息,将所述第一冲正交易发送至第三应用部署单元。
具体而言,当判断Redis数据库已经存在所述第二路由信息时,获得第一发送信息,根据所述第一发送信息将所述第一冲正交易发往已登记路由的应用部署单元。
进一步而言,所述将所述第一冲正交易发送至第二应用部署单元之前,本申请实施例步骤S1000还包括:
步骤S1010:将所述第二路由信息异步登记至Cassandra数据库。
具体而言,同步登记第一冲正交易随机路由信息完成后,在发往第一冲正交易随机路由的应用部署单元之前,异步登记第一冲正交易随机路由信息到Cassandra数据库中。
综上所述,本申请实施例所提供的一种基分布式***冲正交易时序异常处理方法及***具有如下技术效果:
1、由于采用了获得第一正交易,并获得所述第一正交易的第一路由信息,通过第一事务将所述第一路由信息同步登记到Redis数据库,将所述第一正交易发送至第一应用部署单元,获得第一冲正交易,获得所述第一冲正交易的第二路由信息,根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库,将所述第一冲正交易发送至第二应用部署单元。解决了现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。
2、由于采用了通过对所述冲正交易的进行如上述的处理的方式,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。
实施例二
基于与前述实施例中一种基分布式***冲正交易时序异常处理方法同样发明构思,本发明还提供了一种基分布式***冲正交易时序异常处理***,如图2所示,所述***包括:
第一获得单元11,所述第一获得单元11用于获得第一正交易;
第二获得单元12,所述第二获得单元12用于根据所述第一正交易,获得第一路由信息;
第三获得单元13,所述第三获得单元13用于获得第一事务;
第一同步单元14,所述第一同步单元14用于通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;
第一发送单元15,所述第一发送单元15用于将所述第一正交易发送至第一应用部署单元;
第四获得单元16,所述第四获得单元16用于获得第一冲正交易;
第五获得单元17,所述第五获得单元17用于根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;
第六获得单元18,所述第六获得单元18用于获得第二事务;
第二同步单元19,所述第二同步单元用19于根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;
第二发送单元20,所述第二发送单元20用于将所述第一冲正交易发送至第二应用部署单元。
进一步的,所述***还包括:
第一判断单元,所述第一判断单元用于通过所述第一事务判断Redis数据库是否已存在所述第一路由信息;
第三同步单元,所述第三同步单元用于如果所述Redis数据库不存在所述第一路由信息,通过所述第一事务同步登记所述第一路由信息到Redis数据库。
进一步的,所述***还包括:
第七获得单元,所述第七获得单元用于如果所述Redis数据库已经存在所述第一路由信息,获得第一阻断信息;
第一停止单元,所述第一停止单元用于根据所述第一阻断信息,停止进行所述第一正交易;
进一步的,所述***还包括:
第八获得单元,所述第八获得单元用于根据所述第一正交易,获得所述第一正交易的第一路由要素;
第九获得单元,所述第九获得单元用于根据所述第一路由要素,计算获得所述第一路由信息。
进一步的,所述***还包括:
第一异步单元,所述第一异步单元用于将所述第一路由信息异步登记至Cassandra数据库。
进一步的,所述***还包括:
第十获得单元,所述第十获得单元用于获得第一数据保存时间,所述第一数据保存时间为所述Redis数据库的数据保存时间;
第十一获得单元,所述第十一获得单元用于获得第二数据保存时间,所述第二数据保存时间为所述Cassandra数据库的数据保存时间,其中,所述第二数据保存时间长于所述第一数据保存时间。
进一步的,所述***还包括:
第十二获得单元,所述第十二获得单元用于如果所述输入数据属于所述测试数据集,将所述测试数据集中的数据作为输入数据,输入所述RBF网络模型,获得第二输出数据信息,其中,所述第二输出数据信息包括第二客户洗钱风险等级划分结果。
进一步的,所述***还包括:
第十三获得单元,所述第十三获得单元用于根据所述第一冲正交易,获得第一交易流水号;
第二判断单元,所述第二判断单元用于根据所述第一交易流水号,判断所述Redis数据库中是否存在所述第一冲正交易的路由信息;
第十四获得单元,所述第十四获得单元用于获得预定缺失率阈值;
第二判断单元,所述第二判断单元用于判断所述输入数据的缺失率是否超过所述预定缺失率阈值;
第三发送单元,所述第三发送单元用于如果所述Redis数据库中存在所述第一冲正交易的路由信息,将所述第一冲正交易发送至第三应用部署单元。
进一步的,所述***还包括:
第三判断单元,所述第三判断单元用于如果所述Redis数据库中不存在所述第一冲正交易的路由信息,根据所述第一交易流水号,判断所述Cassandra数据库中是否存在所述第一冲正交易的路由信息;
第四发送单元,所述第四发送单元用于如果所述Cassandra数据库中存在所述第一冲正交易的路由信息,将所述第一冲正交易发送至第三应用部署单元。
进一步的,所述***还包括:
第一计算单元,所述第一计算单元用于如果所述Cassandra数据库中不存在所述第一冲正交易的路由信息,根据交易码计算所述第一冲正交易的第二路由信息。
进一步的,所述***还包括:
第四判断单元,所述第四判断单元用于通过所述第二事务判断Redis数据库是否已存在所述第二路由信息;
第四同步单元,所述第四同步单元用于如果所述Redis数据库不存在所述第二路由信息,通过所述第二事务同步登记所述第二路由信息到Redis数据库。
进一步的,所述***还包括:
第十五获得单元,所述第十五获得单元用于如果所述Redis数据库已经存在所述第二路由信息,获得第一发送信息;
第五发送单元,所述第五发送单元用于根据所述第一发送信息,将所述第一冲正交易发送至第三应用部署单元。
进一步的,所述***还包括:
第二异步单元,所述第二异步单元用于将所述第二路由信息异步登记至Cassandra数据库。
前述图1实施例一中的一种基分布式***冲正交易时序异常处理方法的各种变化方式和具体实例同样适用于本实施例的一种基分布式***冲正交易时序异常处理***,通过前述对一种基分布式***冲正交易时序异常处理方法的详细描述,本领域技术人员可以清楚的知道本实施例中一种基分布式***冲正交易时序异常处理***的实施方法,所以为了说明书的简洁,在此不再详述。
示例性电子设备
下面参考图3来描述本申请实施例的电子设备。
图3图示了根据本申请实施例的电子设备的结构示意图。
基于与前述实施例中一种基分布式***冲正交易时序异常处理方法的发明构思,本发明还提供一种基分布式***冲正交易时序异常处理***,其上存储有计算机程序,该程序被处理器执行时实现前文所述一种基分布式***冲正交易时序异常处理方法的任一方法的步骤。
其中,在图3中,总线架构(用总线300来代表),总线300可以包括任意数量的互联的总线和桥,总线300将包括由处理器302代表的一个或多个处理器和存储器304代表的存储器的各种电路链接在一起。总线300还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口306在总线300和接收器301和发送器303之间提供接口。接收器301和发送器303可以是同一个元件,即收发机,提供用于在传输介质上与各种其他***通信的单元。
处理器302负责管理总线300和通常的处理,而存储器304可以被用于存储处理器302在执行操作时所使用的数据。
本发明实施例提供的一种基分布式***冲正交易时序异常处理方法,所述方法包括:获得第一正交易;根据所述第一正交易,获得第一路由信息;获得第一事务;通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;将所述第一正交易发送至第一应用部署单元;获得第一冲正交易;根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;获得第二事务;根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;将所述第一冲正交易发送至第二应用部署单元。解决了现有技术中存在异步登记路由信息时延,正交易、冲正交易各自本身以及相互之间并发登记路由信息混乱,导致账务异常、交易线效率低、交易线容量小的技术问题,达到交易线效率和一致性的兼顾、实现交易线容量的伸缩、对时序异常进行准确、高效的处理的技术效果。
示例性可读存储介质
基于与前述实施例中一种基分布式***冲正交易时序异常处理方法同样的发明构思,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
获得第一正交易;根据所述第一正交易,获得第一路由信息;获得第一事务;通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;将所述第一正交易发送至第一应用部署单元;获得第一冲正交易;根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;获得第二事务;根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;将所述第一冲正交易发送至第二应用部署单元。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的***。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令***的制造品,该指令***实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种基分布式***冲正交易时序异常处理方法,其中,所述方法包括:
获得第一正交易;
根据所述第一正交易,获得第一路由信息;
获得第一事务;
通过所述第一事务,将所述第一路由信息同步登记到Redis数据库,包括:
通过所述第一事务判断Redis数据库是否已存在所述第一路由信息;如果所述Redis数据库已经存在所述第一路由信息,获得第一阻断信息;根据所述第一阻断信息,停止进行所述第一正交易;
如果所述Redis数据库不存在所述第一路由信息,通过所述第一事务同步登记所述第一路由信息到Redis数据库;
将所述第一正交易发送至第一应用部署单元;
获得第一冲正交易;
根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;
获得第二事务;
根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;
将所述第一冲正交易发送至第二应用部署单元;
所述根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库,包括:
通过所述第二事务判断Redis数据库是否已存在所述第二路由信息;
如果所述Redis数据库不存在所述第二路由信息,通过所述第二事务同步登记所述第二路由信息到Redis数据库;
所述通过所述第二事务判断Redis数据库是否已存在所述第二路由信息之后,包括:
如果所述Redis数据库已经存在所述第二路由信息,获得第一发送信息;
根据所述第一发送信息,将所述第一冲正交易发送至第三应用部署单元。
2.如权利要求1所述的方法,其中,所述根据所述第一正交易,获得第一路由信息,包括:
根据所述第一正交易,获得所述第一正交易的第一路由要素;
根据所述第一路由要素,计算获得所述第一路由信息。
3.如权利要求1所述的方法,其中,所述将所述第一正交易发送至第一应用部署单元之前,包括:
将所述第一路由信息异步登记至Cassandra数据库。
4.如权利要求3所述的方法,其中,所述方法包括:
获得第一数据保存时间,所述第一数据保存时间为所述Redis数据库的数据保存时间;
获得第二数据保存时间,所述第二数据保存时间为所述Cassandra数据库的数据保存时间,其中,所述第二数据保存时间长于所述第一数据保存时间。
5.如权利要求1所述的方法,其中,所述根据所述第一冲正交易,获得第二路由信息,包括:
根据所述第一冲正交易,获得第一交易流水号;
根据所述第一交易流水号,判断所述Redis数据库中是否存在所述第一冲正交易的路由信息;
如果所述Redis数据库中存在所述第一冲正交易的路由信息,将所述第一冲正交易发送至第三应用部署单元。
6.如权利要求5所述的方法,其中,所述根据所述第一交易流水号,判断所述Redis数据库中是否存在所述第一冲正交易的路由信息之后,包括:
如果所述Redis数据库中不存在所述第一冲正交易的路由信息,根据所述第一交易流水号,判断Cassandra数据库中是否存在所述第一冲正交易的路由信息;
如果所述Cassandra数据库中存在所述第一冲正交易的路由信息,将所述第一冲正交易发送至第三应用部署单元。
7.如权利要求6所述的方法,其中,所述判断所述Cassandra数据库中是否存在所述第一冲正交易的路由信息之后,包括:
如果所述Cassandra数据库中不存在所述第一冲正交易的路由信息,根据交易码计算所述第一冲正交易的第二路由信息。
8.如权利要求1所述的方法,其中,所述将所述第一冲正交易发送至第二应用部署单元之前,包括:
将所述第二路由信息异步登记至Cassandra数据库。
9.一种基分布式***冲正交易时序异常处理***,其中,所述***包括:
第一获得单元,所述第一获得单元用于获得第一正交易;
第二获得单元,所述第二获得单元用于根据所述第一正交易,获得第一路由信息;
第三获得单元,所述第三获得单元用于获得第一事务;
第一同步单元,所述第一同步单元用于通过所述第一事务,将所述第一路由信息同步登记到Redis数据库;
第一发送单元,所述第一发送单元用于将所述第一正交易发送至第一应用部署单元;
第四获得单元,所述第四获得单元用于获得第一冲正交易;
第五获得单元,所述第五获得单元用于根据所述第一冲正交易,获得第二路由信息,所述第二路由信息为所述第一冲正交易的随机路由信息;
第六获得单元,所述第六获得单元用于获得第二事务;
第二同步单元,所述第二同步单元用于根据所述第二事务,将所述第二路由信息同步登记到所述Redis数据库;
第二发送单元,所述第二发送单元用于将所述第一冲正交易发送至第二应用部署单元。
10.一种基分布式***冲正交易时序异常处理***,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现权利要求1-8任一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现权利要求1-8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110165756.1A CN112950349B (zh) | 2021-02-06 | 2021-02-06 | 一种基分布式***冲正交易时序异常处理方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110165756.1A CN112950349B (zh) | 2021-02-06 | 2021-02-06 | 一种基分布式***冲正交易时序异常处理方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112950349A CN112950349A (zh) | 2021-06-11 |
CN112950349B true CN112950349B (zh) | 2023-08-08 |
Family
ID=76243005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110165756.1A Active CN112950349B (zh) | 2021-02-06 | 2021-02-06 | 一种基分布式***冲正交易时序异常处理方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112950349B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704258B (zh) * | 2021-08-20 | 2023-12-26 | 辽宁振兴银行股份有限公司 | 一种基于MongoDB数据库存储交易报文的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105447757A (zh) * | 2015-11-20 | 2016-03-30 | 中国建设银行股份有限公司 | 一种保持交易信息一致性的方法及*** |
CN108564463A (zh) * | 2018-03-28 | 2018-09-21 | 中国银行股份有限公司 | 一种银行异常交易冲正方法及*** |
CN109447643A (zh) * | 2018-10-31 | 2019-03-08 | ***股份有限公司 | 一种基于区块链的数据共享***及数据共享方法 |
CN111626858A (zh) * | 2020-05-28 | 2020-09-04 | 北京金山云网络技术有限公司 | 冲正交易的处理方法、装置、电子设备和计算机可读介质 |
CN112053232A (zh) * | 2020-09-03 | 2020-12-08 | 中国银行股份有限公司 | 自助设备业务账务一致性处理方法及装置 |
-
2021
- 2021-02-06 CN CN202110165756.1A patent/CN112950349B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105447757A (zh) * | 2015-11-20 | 2016-03-30 | 中国建设银行股份有限公司 | 一种保持交易信息一致性的方法及*** |
CN108564463A (zh) * | 2018-03-28 | 2018-09-21 | 中国银行股份有限公司 | 一种银行异常交易冲正方法及*** |
CN109447643A (zh) * | 2018-10-31 | 2019-03-08 | ***股份有限公司 | 一种基于区块链的数据共享***及数据共享方法 |
CN111626858A (zh) * | 2020-05-28 | 2020-09-04 | 北京金山云网络技术有限公司 | 冲正交易的处理方法、装置、电子设备和计算机可读介质 |
CN112053232A (zh) * | 2020-09-03 | 2020-12-08 | 中国银行股份有限公司 | 自助设备业务账务一致性处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112950349A (zh) | 2021-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102630315B (zh) | 用于防止死锁状态的数据处理方法及*** | |
CN109408590B (zh) | 分布式数据库的扩容方法、装置、设备及存储介质 | |
CN110019496B (zh) | 数据读写方法和*** | |
CN109408450B (zh) | 一种数据处理的方法、***、协处理装置和主处理装置 | |
CN113193947B (zh) | 实现分布式全局序的方法、设备、介质及程序产品 | |
CN112950349B (zh) | 一种基分布式***冲正交易时序异常处理方法及*** | |
CN110363663A (zh) | 基于区块链的数据批量处理方法、装置、设备及存储介质 | |
CN111597035B (zh) | 基于多线程的仿真引擎时间推进方法及*** | |
CN104111957A (zh) | 一种分布式事务同步的方法及*** | |
CN113836184A (zh) | 一种业务持久化方法及装置 | |
CN116467081A (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
US11341842B2 (en) | Metering data management system and computer readable recording medium | |
CN111125168B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN117474124A (zh) | 一种基于联邦学习的模型训练方法、装置、设备及介质 | |
CN110955461B (zh) | 计算任务的处理方法、装置、***、服务器和存储介质 | |
CN113094431A (zh) | 读写分离方法、装置及服务器 | |
CN112636987A (zh) | 一种区块链的跨链网关确定方法、***及终端设备 | |
CN111324787B (zh) | 区块链浏览器中区块链数据的展现方法和装置 | |
CN116414527A (zh) | 一种分布式事务协调器大幅提高性能方法及*** | |
CN102508738B (zh) | 一种多核处理器业务信息的备份方法、内核和备份内核 | |
CN113448755B (zh) | 用于新旧***切换的交易路由方法及装置 | |
US10680877B2 (en) | Information transmission, sending, and acquisition method and device | |
CN115082038A (zh) | ***集成方法、装置及电子设备 | |
CN110445848B (zh) | 用于事务处理的方法和装置 | |
CN111858772A (zh) | 平行链交易组执行方法、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |