CN107015869A - 交易入账控制方法及*** - Google Patents
交易入账控制方法及*** Download PDFInfo
- Publication number
- CN107015869A CN107015869A CN201710027726.8A CN201710027726A CN107015869A CN 107015869 A CN107015869 A CN 107015869A CN 201710027726 A CN201710027726 A CN 201710027726A CN 107015869 A CN107015869 A CN 107015869A
- Authority
- CN
- China
- Prior art keywords
- accounts
- information
- kept
- keeps
- credit entry
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/524—Deadlock detection or avoidance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/522—Barrier synchronisation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种交易入账控制方法及***,该方法包括:交易入账控制***在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中;检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识;启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。本发明提高了交易执行速度及吞吐量,保证业务的正常执行。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种交易入账控制方法及***。
背景技术
目前,各个银行的核心交易***若出现高突发状况,例如,转账交易量突然暴增;较多的同一时刻两个账户之间互转(A转B,B转A)导致的交易死锁事件;大量的转账交易需要更新数据库中同一个账户记录(例如,对于电商平台“例如,阿里巴巴电商平台”而言,商户通过电商平台销售产品,消费者将购买产品的消费金额转入电商平台的指定中间账户中,并由电商平台的指定中间账户在预设时间后,将消费者的消费金额批量转入商户的银行账户中),而导致所述核心交易***需要争抢和等待该账户的账户记录锁,需同步进行扣款和入账处理来完成交易,则所述核心交易***的交易执行会变慢,银行交易的耗时会增加,***吞吐量会大幅下降,银行的交易处理通道会发生堵塞现象,严重影响其它正常业务的运营。
发明内容
本发明的主要目的在于提供一种交易入账控制方法及***,旨在提高高突发状况时的交易执行速度及吞吐量。
为实现上述目的,本发明提供的一种交易入账控制方法,所述方法包括以下步骤:
A、交易入账控制***在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中;
B、检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识;
C、启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。
优选地,所述异步线程包括至少一个用于实时或者定时扫描该待处理队列中带有可入账标识的待入账信息的扫描线程和至少一个用于对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理的工作线程,该方法还包括:
实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则增加预设数量的扫描线程和/或工作线程,并转入执行所述步骤C。
优选地,所述预设规则为:
若所述工作线程有多个,则在同一时刻,同一个贷方账户的待入账信息仅分配给同一个工作线程处理,不同贷方账户的待入账信息分配给不同的工作线程处理;
若所述工作线程只有一个,则将同一个贷方账户的待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,对各个待入账信息集合进行排序,按照该排序,逐一选择待入账信息集合进行入账处理,且进行预设类型的入账信息处理。
优选地,将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法为:
其中,h为预设的第一初始值,p为预设的散列质数,n为贷方账户x的总字符数,n为大于1的正整数,ascii(xk)为贷方账户x的第k+1个字符的ascii值,k的范围是从0至n-1;a为待处理队列的总数;f(x)的值为贷方账户x的待入账信息落入的待处理队列的序号。
优选地,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法为:
其中,h0为预设的第二初始值,p为预设的散列质数,n为贷方账户x的总字符数;n为大于1的正整数,binary(xk)为贷方账户x的第k个字符的一个字节的二进制值;k的范围是从1至n;a为待处理队列的总数,f(x)的值为贷方账户x的待入账信息落入的工作线程的序号。
此外,为实现上述目的,本发明还提供一种交易入账控制***,所述交易入账控制***包括:
扣款模块,用于在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中;
检查模块,用于检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识;
异步入账模块,用于扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。
优选地,所述异步线程包括至少一个用于实时或者定时扫描该待处理队列中带有可入账标识的待入账信息的扫描线程和至少一个用于对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理的工作线程,所述交易入账控制***还包括:
增加模块,用于实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则增加预设数量的扫描线程和/或工作线程。
优选地,所述预设规则为:
若所述工作线程有多个,则在同一时刻,同一个贷方账户的待入账信息仅分配给同一个工作线程处理,不同贷方账户的待入账信息分配给不同的工作线程处理;
若所述工作线程只有一个,则将同一个贷方账户的待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,对各个待入账信息集合进行排序,按照该排序,逐一选择待入账信息集合进行入账处理,且进行预设类型的入账信息处理。
优选地,将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法为:
其中,h为预设的第一初始值,p为预设的散列质数,n为贷方账户x的总字符数,n为大于1的正整数,ascii(xk)为贷方账户x的第k+1个字符的ascii值,k的范围是从0至n-1;a为待处理队列的总数;f(x)的值为贷方账户x的待入账信息落入的待处理队列的序号。
优选地,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法为:
其中,h0为预设的第二初始值,p为预设的散列质数,n为贷方账户x的总字符数;n为大于1的正整数,binary(xk)为贷方账户x的第k个字符的一个字节的二进制值;k的范围是从1至n;a为待处理队列的总数,f(x)的值为贷方账户x的待入账信息落入的工作线程的序号。
本发明提出的交易入账控制方法及***,在收到转账交易请求后,先对该转账交易请求对应的借方账户进行扣款并将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中,若检查该贷方账户满足预设的入账条件,则为该贷方账户的待入账信息生成可入账标识;并启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理。由于是先将贷方账户的待入账信息加入待处理队列中,并利用异步线程对该待处理队列中满足入账条件的待入账信息进行入账处理,通过异步入账的方式减轻了交易***在高突发状况时的入账压力,避免在高突发状况时交易***争抢和等待交易账户的账户记录锁,提高了交易执行速度及吞吐量,保证业务的正常执行。
附图说明
图1为本发明交易入账控制方法第一实施例的流程示意图;
图2为本发明交易入账控制方法第二实施例的流程示意图;
图3为本发明交易入账控制***第一实施例的功能模块示意图;
图4为本发明交易入账控制***第二实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种交易入账控制方法。
参照图1,图1为本发明交易入账控制方法第一实施例的流程示意图。
在第一实施例中,该交易入账控制方法包括:
步骤S10,交易入账控制***在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中。
本实施例中,交易入账控制***接收用户发出的转账交易请求,例如,接收用户在手机、平板电脑、自助终端设备等终端上输入相关信息(例如,转账交易的扣款账户、入账账户、转账金额、转账日期、转账类型等)后发送的转账交易请求,如接收用户在手机、平板电脑、自助终端设备等终端中预先安装的交易客户端上输入相关信息后发送来的转账交易请求,或接收用户在手机、平板电脑、自助终端设备等终端中的浏览器***上输入相关信息后发送来的转账交易请求。
交易入账控制***在收到一个转账交易请求后,启用主事务线程对该转账交易请求对应的借方账户(即:扣款账户)进行实时或者定时扣款,即在收到转账交易请求后立刻将该转账交易请求对应的借方账户的账户金额扣除该转账交易请求对应的转账金额,并且进行预设类型的扣款信息处理,以完成借方账户的扣款操作;其中,所述预设类型的扣款信息处理包括但不限于生成扣款明细、补登折处理、推送动账通知等。然后,并不直接进行入账操作,而是将该转账交易请求对应的贷方账户(即:入账账户)的待入账信息(例如,待入账的金额、借方账户信息、交易备注信息等)加入至预先生成的待处理队列中。
步骤S20,检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识。
实时或者定时检查贷方账户是否满足入账条件,例如,若检查出该贷方账户被冻结,则确定该贷方账户不满足入账条件;或者,若检查出该贷方账户被销户,则确定该贷方账户不满足入账条件,等等,在此不做限定。在检查并确定该贷方账户满足入账条件后,为加入待处理队列中的该贷方账户的待入账信息生成可入账标识。
步骤S30,启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。
交易入账控制***启用异步线程,实时或者定时扫描生成的待处理队列中带有可入账标识的待入账信息,该带有可入账标识的待入账信息即为经过检查满足入账条件的贷方账户的待入账信息。对扫描到的待入账信息按照预设规则进行入账处理,如可对多个相同的贷方账户的待入账信息进行并行处理,也可对多个不同的贷方账户的待入账信息进行串行处理,在此不做限定。并且,在对扫描到的待入账信息进行入账处理时,还进行预设类型的入账信息处理,例如,所述预设类型的入账信息处理包括但不限于生成入账明细、补登折处理、推送动账通知等,以完成异步入账操作。
本实施例在收到转账交易请求后,先对该转账交易请求对应的借方账户进行扣款并将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中,若检查该贷方账户满足预设的入账条件,则为该贷方账户的待入账信息生成可入账标识;并启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理。由于是先将贷方账户的待入账信息加入待处理队列中,并利用异步线程对该待处理队列中满足入账条件的待入账信息进行入账处理,通过异步入账的方式减轻了交易***在高突发状况时的入账压力,避免在高突发状况时交易***争抢和等待交易账户的账户记录锁,提高了交易执行速度及吞吐量,保证业务的正常执行。
如图2所示,本发明第二实施例提出一种交易入账控制方法,在上述实施例的基础上,在上述步骤S30之前还包括:
步骤S40,实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则增加预设数量的扫描线程和/或工作线程。
本实施例中,用于进行异步入账的异步线程包括至少一个扫描线程和至少一个工作线程,其中:所述扫描线程用于实时或者定时扫描该待处理队列中带有可入账标识的待入账信息;所述工作线程用于对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。通过至少一个扫描线程和至少一个工作线程来分别进行带有可入账标识的待入账信息的扫描操作及对扫描到的待入账信息的入账操作,分工明确,防止入账冲突,提高了异步入账处理的效率。
进一步地,还可实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则说明当前需扫描和入账的待入账信息较多,则增加预设数量的扫描线程和/或工作线程,以提高异步入账处理的速度,保证异步入账处理的高效率。
进一步地,在其他实施例中,所述预设规则为:
若所述工作线程有多个,则在同一时刻,同一个贷方账户的待入账信息仅分配给同一个工作线程处理,不同贷方账户的待入账信息分配给不同的工作线程处理;
若所述工作线程只有一个,则将同一个贷方账户的待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,对各个待入账信息集合进行排序,按照该排序,逐一选择待入账信息集合进行入账处理,且进行预设类型的入账信息处理。
本实施例中,在通过异步线程中的工作线程对扫描到的带有可入账标识的待入账信息进行入账处理时,若所述工作线程有多个,在同一个贷方账户的一个或多个待入账信息均分配给同一个工作线程处理,即由多个工作线程分别对多个不同贷方账户的一个或多个待入账信息进行并行处理。若所述工作线程只有一个,则将同一个贷方账户的一个或多个待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,所述工作线程只需按顺序依次串行处理每一待入账信息集合,能有效地对待入账信息按贷方账户进行分类并集中处理,简化了处理流程,提高处理速度,从而提高异步入账处理的效率。
进一步地,在其他实施例中,将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法为:
其中,h为预设的第一初始值,可以设置为任意整数值,也可以设置为0。p为预设的散列质数,可取257。n为贷方账户x的总字符数,n为大于1的正整数,ascii(xk)为贷方账户x的第k+1个字符的ascii值,k的范围是从0至n-1。a为待处理队列的总数。
通过上述算法计算出的f(x)的值为贷方账户x的待入账信息落入的待处理队列的序号也即代号,如第f(x)号待处理队列,从而依次将贷方账户x的待入账信息加入相应序号的待处理队列中。
进一步地,在其他实施例中,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法为:
其中,h0为预设的第二初始值,可以设置为任意整数值,例如取-2128831035。p为预设的散列质数,可取57885161。n为贷方账户x的总字符数;n为大于1的正整数,binary(xk)为贷方账户x的第k个字符的一个字节的二进制值;k的范围是从1至n;a为待处理队列的总数。其中,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法与将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法中的散列质数p可以设置为相同,也可以设置为不同;第一初始值h与第二初始值h0可以设置为相同,也可以设置为不同,在此不做限定。
通过上述算法计算出的f(x)的值为贷方账户x的待入账信息落入的工作线程的序号也即代号,如第f(x)号工作线程,从而依次将贷方账户x的待入账信息加入相应序号的工作线程中。
本发明进一步提供一种交易入账控制***。
参照图3,图3为本发明交易入账控制***第一实施例的功能模块示意图。
在第一实施例中,该交易入账控制***包括:
扣款模块01,用于在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中。
本实施例中,交易入账控制***接收用户发出的转账交易请求,例如,接收用户在手机、平板电脑、自助终端设备等终端上输入相关信息(例如,转账交易的扣款账户、入账账户、转账金额、转账日期、转账类型等)后发送的转账交易请求,如接收用户在手机、平板电脑、自助终端设备等终端中预先安装的交易客户端上输入相关信息后发送来的转账交易请求,或接收用户在手机、平板电脑、自助终端设备等终端中的浏览器***上输入相关信息后发送来的转账交易请求。
交易入账控制***在收到一个转账交易请求后,启用主事务线程对该转账交易请求对应的借方账户(即:扣款账户)进行实时或者定时扣款,即在收到转账交易请求后立刻将该转账交易请求对应的借方账户的账户金额扣除该转账交易请求对应的转账金额,并且进行预设类型的扣款信息处理,以完成借方账户的扣款操作;其中,所述预设类型的扣款信息处理包括但不限于生成扣款明细、补登折处理、推送动账通知等。然后,并不直接进行入账操作,而是将该转账交易请求对应的贷方账户(即:入账账户)的待入账信息(例如,待入账的金额、借方账户信息、交易备注信息等)加入至预先生成的待处理队列中。
检查模块02,用于检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识。
实时或者定时检查贷方账户是否满足入账条件,例如,若检查出该贷方账户被冻结,则确定该贷方账户不满足入账条件;或者,若检查出该贷方账户被销户,则确定该贷方账户不满足入账条件,等等,在此不做限定。在检查并确定该贷方账户满足入账条件后,为加入待处理队列中的该贷方账户的待入账信息生成可入账标识。
异步入账模块03,用于扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。
交易入账控制***启用异步线程,实时或者定时扫描生成的待处理队列中带有可入账标识的待入账信息,该带有可入账标识的待入账信息即为经过检查满足入账条件的贷方账户的待入账信息。对扫描到的待入账信息按照预设规则进行入账处理,如可对多个相同的贷方账户的待入账信息进行并行处理,也可对多个不同的贷方账户的待入账信息进行串行处理,在此不做限定。并且,在对扫描到的待入账信息进行入账处理时,还进行预设类型的入账信息处理,例如,所述预设类型的入账信息处理包括但不限于生成入账明细、补登折处理、推送动账通知等,以完成异步入账操作。
本实施例在收到转账交易请求后,先对该转账交易请求对应的借方账户进行扣款并将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中,若检查该贷方账户满足预设的入账条件,则为该贷方账户的待入账信息生成可入账标识;并启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理。由于是先将贷方账户的待入账信息加入待处理队列中,并利用异步线程对该待处理队列中满足入账条件的待入账信息进行入账处理,通过异步入账的方式减轻了交易***在高突发状况时的入账压力,避免在高突发状况时交易***争抢和等待交易账户的账户记录锁,提高了交易执行速度及吞吐量,保证业务的正常执行。
如图4所示,本发明第二实施例提出一种交易入账控制***,在上述实施例的基础上,还包括:
增加模块04,用于实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则增加预设数量的扫描线程和/或工作线程。
本实施例中,用于进行异步入账的异步线程包括至少一个扫描线程和至少一个工作线程,其中:所述扫描线程用于实时或者定时扫描该待处理队列中带有可入账标识的待入账信息;所述工作线程用于对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。通过至少一个扫描线程和至少一个工作线程来分别进行带有可入账标识的待入账信息的扫描操作及对扫描到的待入账信息的入账操作,分工明确,防止入账冲突,提高了异步入账处理的效率。
进一步地,还可实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则说明当前需扫描和入账的待入账信息较多,则增加预设数量的扫描线程和/或工作线程,以提高异步入账处理的速度,保证异步入账处理的高效率。
进一步地,在其他实施例中,所述预设规则为:
若所述工作线程有多个,则在同一时刻,同一个贷方账户的待入账信息仅分配给同一个工作线程处理,不同贷方账户的待入账信息分配给不同的工作线程处理;
若所述工作线程只有一个,则将同一个贷方账户的待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,对各个待入账信息集合进行排序,按照该排序,逐一选择待入账信息集合进行入账处理,且进行预设类型的入账信息处理。
本实施例中,在通过异步线程中的工作线程对扫描到的带有可入账标识的待入账信息进行入账处理时,若所述工作线程有多个,在同一个贷方账户的一个或多个待入账信息均分配给同一个工作线程处理,即由多个工作线程分别对多个不同贷方账户的一个或多个待入账信息进行并行处理。若所述工作线程只有一个,则将同一个贷方账户的一个或多个待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,所述工作线程只需按顺序依次串行处理每一待入账信息集合,能有效地对待入账信息按贷方账户进行分类并集中处理,简化了处理流程,提高处理速度,从而提高异步入账处理的效率。
进一步地,在其他实施例中,将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法为:
其中,h为预设的第一初始值,可以设置为任意整数值,也可以设置为0。p为预设的散列质数,可取257。n为贷方账户x的总字符数,n为大于1的正整数,ascii(xk)为贷方账户x的第k+1个字符的ascii值,k的范围是从0至n-1。a为待处理队列的总数。
通过上述算法计算出的f(x)的值为贷方账户x的待入账信息落入的待处理队列的序号也即代号,如第f(x)号待处理队列,从而依次将贷方账户x的待入账信息加入相应序号的待处理队列中。
进一步地,在其他实施例中,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法为:
其中,h0为预设的第二初始值,可以设置为任意整数值,例如取-2128831035。p为预设的散列质数,可取57885161。n为贷方账户x的总字符数;n为大于1的正整数,binary(xk)为贷方账户x的第k个字符的一个字节的二进制值;k的范围是从1至n;a为待处理队列的总数。其中,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法与将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法中的散列质数p可以设置为相同,也可以设置为不同;第一初始值h与第二初始值h0可以设置为相同,也可以设置为不同,在此不做限定。
通过上述算法计算出的f(x)的值为贷方账户x的待入账信息落入的工作线程的序号也即代号,如第f(x)号工作线程,从而依次将贷方账户x的待入账信息加入相应序号的工作线程中。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。
Claims (10)
1.一种交易入账控制方法,其特征在于,所述方法包括以下步骤:
A、交易入账控制***在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中;
B、检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识;
C、启用异步线程,扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。
2.如权利要求1所述的交易入账控制方法,其特征在于,所述异步线程包括至少一个用于实时或者定时扫描该待处理队列中带有可入账标识的待入账信息的扫描线程和至少一个用于对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理的工作线程,该方法还包括:
实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则增加预设数量的扫描线程和/或工作线程,并转入执行所述步骤C。
3.如权利要求2所述的交易入账控制方法,其特征在于,所述预设规则为:
若所述工作线程有多个,则在同一时刻,同一个贷方账户的待入账信息仅分配给同一个工作线程处理,不同贷方账户的待入账信息分配给不同的工作线程处理;
若所述工作线程只有一个,则将同一个贷方账户的待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,对各个待入账信息集合进行排序,按照该排序,逐一选择待入账信息集合进行入账处理,且进行预设类型的入账信息处理。
4.如权利要求1或2所述的交易入账控制方法,其特征在于,将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法为:
其中,h为预设的第一初始值,p为预设的散列质数,n为贷方账户x的总字符数,n为大于1的正整数,ascii(xk)为贷方账户x的第k+1个字符的ascii值,k的范围是从0至n-1;a为待处理队列的总数;f(x)的值为贷方账户x的待入账信息落入的待处理队列的序号。
5.如权利要求2所述的交易入账控制方法,其特征在于,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法为:
其中,h0为预设的第二初始值,p为预设的散列质数,n为贷方账户x的总字符数;n为大于1的正整数,binary(xk)为贷方账户x的第k个字符的一个字节的二进制值;k的范围是从1至n;a为待处理队列的总数,f(x)的值为贷方账户x的待入账信息落入的工作线程的序号。
6.一种交易入账控制***,其特征在于,所述交易入账控制***包括:
扣款模块,用于在收到一个转账交易请求后,对该转账交易请求对应的借方账户进行扣款并进行预设类型的扣款信息处理,将该转账交易请求对应的贷方账户的待入账信息加入至预先生成的待处理队列中;
检查模块,用于检查该贷方账户是否满足预设的入账条件,并在该贷方账户满足入账条件后,为该贷方账户的待入账信息生成可入账标识;
异步入账模块,用于扫描该待处理队列中带有可入账标识的待入账信息,并对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理。
7.如权利要求6所述的交易入账控制***,其特征在于,所述异步线程包括至少一个用于实时或者定时扫描该待处理队列中带有可入账标识的待入账信息的扫描线程和至少一个用于对扫描到的待入账信息按照预设规则进行入账处理,且进行预设类型的入账信息处理的工作线程,所述交易入账控制***还包括:
增加模块,用于实时或者定时侦测该待处理队列中带有可入账标识的待入账信息数量;若侦测的待入账信息数量大于预设阈值,则增加预设数量的扫描线程和/或工作线程。
8.如权利要求7所述的交易入账控制***,其特征在于,所述预设规则为:
若所述工作线程有多个,则在同一时刻,同一个贷方账户的待入账信息仅分配给同一个工作线程处理,不同贷方账户的待入账信息分配给不同的工作线程处理;
若所述工作线程只有一个,则将同一个贷方账户的待入账信息归为相同的待入账信息集合中,将不同的贷方账户的待入账信息归为不同的待入账信息集合中,对各个待入账信息集合进行排序,按照该排序,逐一选择待入账信息集合进行入账处理,且进行预设类型的入账信息处理。
9.如权利要求6或7所述的交易入账控制***,其特征在于,将该转账交易请求对应的贷方账户的待入账信息加入预先生成的待处理队列的算法为:
其中,h为预设的第一初始值,p为预设的散列质数,n为贷方账户x的总字符数,n为大于1的正整数,ascii(xk)为贷方账户x的第k+1个字符的ascii值,k的范围是从0至n-1;a为待处理队列的总数;f(x)的值为贷方账户x的待入账信息落入的待处理队列的序号。
10.如权利要求7所述的交易入账控制***,其特征在于,将该转账交易请求对应的贷方账户的待入账信息加入所述异步线程中的工作线程的算法为:
其中,h0为预设的第二初始值,p为预设的散列质数,n为贷方账户x的总字符数;n为大于1的正整数,binary(xk)为贷方账户x的第k个字符的一个字节的二进制值;k的范围是从1至n;a为待处理队列的总数,f(x)的值为贷方账户x的待入账信息落入的工作线程的序号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710027726.8A CN107015869B (zh) | 2017-01-16 | 2017-01-16 | 交易入账控制方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710027726.8A CN107015869B (zh) | 2017-01-16 | 2017-01-16 | 交易入账控制方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107015869A true CN107015869A (zh) | 2017-08-04 |
CN107015869B CN107015869B (zh) | 2018-08-31 |
Family
ID=59440372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710027726.8A Active CN107015869B (zh) | 2017-01-16 | 2017-01-16 | 交易入账控制方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107015869B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108256843A (zh) * | 2018-01-12 | 2018-07-06 | 上海瀚银信息技术有限公司 | 一种代付交易方法及代付交易*** |
CN108615184A (zh) * | 2018-03-29 | 2018-10-02 | 阿里巴巴集团控股有限公司 | 一种记账的方法及装置 |
CN109376189A (zh) * | 2018-09-13 | 2019-02-22 | 阿里巴巴集团控股有限公司 | 批量数据操作的处理方法、装置及设备 |
CN109472577A (zh) * | 2018-09-26 | 2019-03-15 | 中国平安人寿保险股份有限公司 | 账户入账方法、装置、计算机设备和存储介质 |
CN109636369A (zh) * | 2018-11-02 | 2019-04-16 | 深圳市快付通金融网络科技服务有限公司 | 资金账户账务处理方法、装置、计算机设备及存储介质 |
CN109711958A (zh) * | 2018-08-17 | 2019-05-03 | 深圳壹账通智能科技有限公司 | 对公入账方法、装置、终端设备及计算机可读存储介质 |
CN110196769A (zh) * | 2018-04-19 | 2019-09-03 | 财付通支付科技有限公司 | 一种信息处理方法、装置、服务器及存储介质 |
CN110310192A (zh) * | 2019-05-23 | 2019-10-08 | 平安银行股份有限公司 | 基于数据分析的交易处理方法、装置、设备和存储介质 |
CN110889687A (zh) * | 2019-11-18 | 2020-03-17 | 厦门网宿有限公司 | 分布式架构下账户余额的处理方法及装置 |
CN111352753A (zh) * | 2020-04-26 | 2020-06-30 | 中国银行股份有限公司 | 账务处理方法及装置 |
CN112561687A (zh) * | 2020-12-18 | 2021-03-26 | 厦门投融汇网络有限公司 | 一种基于多线程账户资金异步处理方法 |
CN112990900A (zh) * | 2019-12-02 | 2021-06-18 | 贝壳技术有限公司 | 转账方法、装置、存储介质及设备 |
CN113362025A (zh) * | 2021-06-04 | 2021-09-07 | 北京京东振世信息技术有限公司 | 数据核算***、方法、计算机可读存储介质、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5940813A (en) * | 1996-07-26 | 1999-08-17 | Citibank, N.A. | Process facility management matrix and system and method for performing batch, processing in an on-line environment |
CN101620703A (zh) * | 2008-07-04 | 2010-01-06 | 阿里巴巴集团控股有限公司 | 一种缓冲记账方法及装置 |
CN101639792A (zh) * | 2008-07-29 | 2010-02-03 | 阿里巴巴集团控股有限公司 | 一种并发数据处理方法、装置及一种电子记账*** |
CN101673307A (zh) * | 2009-10-21 | 2010-03-17 | 中国农业大学 | 空间数据索引方法及*** |
CN202373037U (zh) * | 2011-12-21 | 2012-08-08 | 成都英黎科技有限公司 | 基于移动终端的转账*** |
-
2017
- 2017-01-16 CN CN201710027726.8A patent/CN107015869B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5940813A (en) * | 1996-07-26 | 1999-08-17 | Citibank, N.A. | Process facility management matrix and system and method for performing batch, processing in an on-line environment |
CN101620703A (zh) * | 2008-07-04 | 2010-01-06 | 阿里巴巴集团控股有限公司 | 一种缓冲记账方法及装置 |
CN101639792A (zh) * | 2008-07-29 | 2010-02-03 | 阿里巴巴集团控股有限公司 | 一种并发数据处理方法、装置及一种电子记账*** |
CN101673307A (zh) * | 2009-10-21 | 2010-03-17 | 中国农业大学 | 空间数据索引方法及*** |
CN202373037U (zh) * | 2011-12-21 | 2012-08-08 | 成都英黎科技有限公司 | 基于移动终端的转账*** |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108256843B (zh) * | 2018-01-12 | 2022-06-07 | 上海瀚银信息技术有限公司 | 一种代付交易方法及代付交易*** |
CN108256843A (zh) * | 2018-01-12 | 2018-07-06 | 上海瀚银信息技术有限公司 | 一种代付交易方法及代付交易*** |
CN108615184A (zh) * | 2018-03-29 | 2018-10-02 | 阿里巴巴集团控股有限公司 | 一种记账的方法及装置 |
WO2019184571A1 (zh) * | 2018-03-29 | 2019-10-03 | 阿里巴巴集团控股有限公司 | 一种记账的方法及装置 |
CN110196769A (zh) * | 2018-04-19 | 2019-09-03 | 财付通支付科技有限公司 | 一种信息处理方法、装置、服务器及存储介质 |
CN109711958A (zh) * | 2018-08-17 | 2019-05-03 | 深圳壹账通智能科技有限公司 | 对公入账方法、装置、终端设备及计算机可读存储介质 |
CN109376189A (zh) * | 2018-09-13 | 2019-02-22 | 阿里巴巴集团控股有限公司 | 批量数据操作的处理方法、装置及设备 |
CN109472577A (zh) * | 2018-09-26 | 2019-03-15 | 中国平安人寿保险股份有限公司 | 账户入账方法、装置、计算机设备和存储介质 |
CN109636369A (zh) * | 2018-11-02 | 2019-04-16 | 深圳市快付通金融网络科技服务有限公司 | 资金账户账务处理方法、装置、计算机设备及存储介质 |
CN110310192A (zh) * | 2019-05-23 | 2019-10-08 | 平安银行股份有限公司 | 基于数据分析的交易处理方法、装置、设备和存储介质 |
CN110889687A (zh) * | 2019-11-18 | 2020-03-17 | 厦门网宿有限公司 | 分布式架构下账户余额的处理方法及装置 |
CN112990900A (zh) * | 2019-12-02 | 2021-06-18 | 贝壳技术有限公司 | 转账方法、装置、存储介质及设备 |
CN111352753A (zh) * | 2020-04-26 | 2020-06-30 | 中国银行股份有限公司 | 账务处理方法及装置 |
CN111352753B (zh) * | 2020-04-26 | 2023-08-18 | 中国银行股份有限公司 | 账务处理方法及装置 |
CN112561687A (zh) * | 2020-12-18 | 2021-03-26 | 厦门投融汇网络有限公司 | 一种基于多线程账户资金异步处理方法 |
CN113362025A (zh) * | 2021-06-04 | 2021-09-07 | 北京京东振世信息技术有限公司 | 数据核算***、方法、计算机可读存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107015869B (zh) | 2018-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107015869A (zh) | 交易入账控制方法及*** | |
CN107437223A (zh) | 贷款信息审核方法、装置及设备 | |
CN107872436A (zh) | 一种账号识别方法、装置及*** | |
CN106557929A (zh) | 物流信息处理方法及装置 | |
US20180247354A1 (en) | User purchase profiling from electronic purchase confirmation messages | |
CN108492177A (zh) | 境内资产跨境交易方法、服务器及存储介质 | |
CN110276369A (zh) | 基于机器学习的特征选择方法、装置、设备及存储介质 | |
CN108197851A (zh) | 一种电子商务多单同地址的物流分配方法 | |
US20140012763A1 (en) | Money transfer fraud prevention methods and systems | |
CN106504076A (zh) | 分布式订单处理方法、装置及订单处理*** | |
CN107665462A (zh) | 一种自动跨平台以执行股东投票的方法及*** | |
CN107808285A (zh) | 一种支付方法、设备及计算机可读存储介质 | |
CN108171561A (zh) | 一种全渠道订单合并处理方法 | |
CN112396504A (zh) | 一种电商订单拦截方法、装置和电子设备 | |
CN107194779A (zh) | 线下零售的方法、装置及计算机可读存储介质 | |
US20080040286A1 (en) | Method of Anti-Fraud for Credit Card | |
CN103793820B (zh) | 一种商品信息的投放方法和装置及*** | |
CN105247481B (zh) | 用于网页输出选择的计算***、方法和机器可读非暂时性存储介质 | |
CN113869918A (zh) | 一种商品退货处理方法、装置、电子设备及存储介质 | |
CN109636581A (zh) | 贷款申请信息的处理方法及装置、存储介质、计算机设备 | |
CN106133779A (zh) | 电子商务企业订单接受算法控制方法和装置 | |
CN112069230A (zh) | 数据分析方法、装置、设备及存储介质 | |
CN106934714A (zh) | 一种业务数据处理方法及装置 | |
CN111274488B (zh) | 推荐方法、装置、设备、***、待执行终端及存储介质 | |
CN113313600B (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 |