CN115034902A - 记账处理方法及装置 - Google Patents

记账处理方法及装置 Download PDF

Info

Publication number
CN115034902A
CN115034902A CN202210707246.7A CN202210707246A CN115034902A CN 115034902 A CN115034902 A CN 115034902A CN 202210707246 A CN202210707246 A CN 202210707246A CN 115034902 A CN115034902 A CN 115034902A
Authority
CN
China
Prior art keywords
transaction
accounting
state
record
account
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.)
Pending
Application number
CN202210707246.7A
Other languages
English (en)
Inventor
田野
刘洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202210707246.7A priority Critical patent/CN115034902A/zh
Publication of CN115034902A publication Critical patent/CN115034902A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书实施例提供了记账处理方法及装置,其中,一种记账处理方法包括:读取交易账户的记账请求携带的交易数据包含的交易类型;若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。

Description

记账处理方法及装置
技术领域
本文件涉及数据处理技术领域,尤其涉及一种记账处理方法及装置。
背景技术
随着在线交易量的增大及交易场景的增多,高频交易的热点账户开始逐步涌现,热点账户,指某个账户在短时间内收到大量的并发交易,在对热点账户进行记账处理过程中,需要对并发交易带来的大量并发记账请求进行处理,往往会由于系统处理性能瓶颈导致记账失败或其它问题,从而影响交易系统的稳定性。
发明内容
本说明书一个或多个实施例提供了一种记账处理方法,包括:读取交易账户的记账请求携带的交易数据包含的交易类型。若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态。基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额。若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
本说明书一个或多个实施例提供了一种记账处理装置,包括:交易类型读取模块,被配置为读取交易账户的记账请求携带的交易数据包含的交易类型。流出交易记录创建模块,被配置为若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态。交易发生额计算模块,被配置为基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额。记账执行处理模块,被配置为若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
本说明书一个或多个实施例提供了一种记账处理设备,包括:处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:读取交易账户的记账请求携带的交易数据包含的交易类型。若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态。基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额。若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:读取交易账户的记账请求携带的交易数据包含的交易类型。若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态。基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额。若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图;
图1为本说明书一个或多个实施例提供的一种记账处理方法处理流程图;
图2为本说明书一个或多个实施例提供的一种应用于热点账户场景的记账处理方法处理流程图;
图3为本说明书一个或多个实施例提供的一种记账处理装置示意图;
图4为本说明书一个或多个实施例提供的一种记账处理设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
本说明书提供的一种记账处理方法实施例:
参照图1,本实施例提供的记账处理方法,所述方法具体包括步骤S102至步骤S108。
步骤S102,读取交易账户的记账请求携带的交易数据包含的交易类型。
本申请提供的记账处理方法,从记账请求携带的交易数据包含的交易类型出发,针对交易类型为流出交易类型的交易数据,创建交易数据的流出交易记录,并通过将流出交易记录写入交易记录池、配置记账状态的方式进行记账初始化,然后通过计算交易记录池中交易记录的交易发生额和查询交易账户的账户余额,在交易发生额不超过交易账户的账户余额的情况下进行相应的记账执行处理,以此通过交易记录池的维护和记账状态的配置来提升交易账户在记账处理过程中的性能,提升了记账处理的效率和成功率,同时也避免了针对交易类型为流出交易类型的交易数据进行记账处理后可能存在的透支风险。
本实施例所述交易账户,是指资源交易过程中使用的用于进行资源交易的资源账户,比如资金账户、虚拟资源账户。可选的,所述交易账户包括热点账户,所述热点账户的确定,可在检测到交易账户在一定时间段内交易次数大于交易次数阈值的情况下将该交易账户确定为热点账户,还可根据实际需求将某个交易账户配置为热点账户。
所述记账请求,是指针对所述交易账户产生一笔交易后,生成的用于对该笔交易进行记账处理的请求;所述交易数据是指该笔交易的交易相关数据,所述交易数据包含交易金额、交易时间、账户信息和/或交易类型,此外,所述交易数据还可以包含与交易相关的其他数据。其中,所述交易类型,是指当前交易相对于所述交易账户所产生的资源流转方向,若当前交易的进行会导致交易账户产生资金流出,则交易类型为交易流出类型;反之,若当前交易的进行会导致交易账户产生资金流入,则交易类型为交易流入类型。
具体实施时,从所述记账请求携带的交易数据中读取所述交易类型,在读取到所述交易类型之后,为了提升交易账户的记账处理性能,可通过事务执行的方式实现所述交易数据的记账处理,保证交易数据的记账处理过程中的数据一致性,可选的,创建所述记账请求的记账事务,以及,在所述交易类型为流出交易类型的情况下,创建所述记账事务的子事务,通过事务处理的方式能够使针对所述交易账户的多个记账请求创建的并发事务之间相互可见,从而使交易账户在面临大量并发记账请求时,能够更加准确的进行交易数据统计。其中,记账事务负责所述记账请求的记账处理过程中的执行,子事务负责记账处理过程中流出交易类型的交易数据的交易记录的创建和存储。
此外,还可通过引入分布式事务,在提升记账处理性能的同时保证记账处理一致性,比如创建记账请求的分布式事务,并在记账请求携带的交易数据包含的交易类型为流出交易类型,则创建该分布式事务的子事务。
步骤S104,若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态。
在上述步骤读取到的所述交易数据包含的交易类型的基础上,本步骤中,从所述交易类型出发,进行交易记录的创建、写入交易记录池以及记账状态的配置。其中,所述交易记录是指用于所述交易数据的明细记录,交易记录具体分为流入交易类型的流入交易记录和流出交易类型的流出交易记录;所述交易记录池是指用户存储交易记录的数据存储池。所述记账状态是指所述记账请求的处理阶段所对应的状态,具体包括第一状态、第二状态和第三状态,第一状态是指记账请求的记账处理过程处于记账初始化阶段,第二状态是指记账请求的记账处理过程处于记账执行阶段,第三状态是指记账请求的记账处理过程处于补账执行阶段。
具体执行过程中,若所述交易类型为流出交易类型,则创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态。如上所述,为了保证记账处理过程中的数据一致性,可创建记账事务,通过记账事务的执行来确保记账处理过程中的数据一致性,在上述创建的子事务的基础上,可通过子事务的执行实现流出交易记录的创建和写入交易记录池,以此通过事务执行的方式来确保记账处理过程中的数据一致性。
其中,在将创建的流出交易记录写入所述交易记录池之后进行的配置记账状态这一操作,是指配置当前写入所述交易记录池的流出交易记录的记账状态,具体是将该流出交易记录的记账状态配置为第一状态。
若所述交易类型为流入交易类型,则创建所述交易数据的流入交易记录,将所述流入交易记录写入所述交易记录池,并将所述流入交易记录的记账状态配置为第一状态。
此外,上述从所述交易类型出发,进行交易记录的创建、写入交易记录池以及记账状态的配置这一过程,还可被替换为记账初始化,具体的,若所述交易类型为流出交易类型,则进行所述记账请求的记账初始化,所述记账请求的记账初始化具体包括:创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;若所述交易类型为流入交易类型,采用如下方式进行所述交易请求的初始化处理:创建所述交易数据的流入交易记录,将所述流入交易记录写入所述交易记录池,并将所述流入交易记录的记账状态配置为第一状态。
步骤S106,基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额。
上述在将创建的流出交易记录或者流入交易记录写入所述交易记录池,并进行相应的记账状态配置之后,本步骤中,从所述交易记录池中存储的交易记录出发,通过统计当前已经发生或者处于记账处理过程的交易额,并将统计的发生额与所述交易账户的账户余额进行比较,若当前统计的发生额小于或者等于所述交易账户的账户余额,则表明所述交易账户的账户余额能够满足当前统计的交易记录的记账处理,如果当前统计的发生额大于所述交易账户的账户余额,则表明所述交易账户的账户余额无法满足当前统计的交易记录的记账处理。其中,所述交易发生额,是指当前正在进行记账处理的流入交易记录和流出交易记录所涉及的交易额的净流出交易额。
具体的,本实施例提供的一种可选实施方式中,在基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额的过程中,为了避免所述交易账户被透支,本实施例提供的一种可选实施方式中,根据记账状态为第一状态和第二状态的流出交易记录的交易额和记账状态为第二状态的流入交易记录的交易额,计算交易发生额。具体的,基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,采用如下方式实现:
确定所述交易记录池中记账状态为第一状态和第二状态的流出交易记录,以及记账状态为第二状态的流入交易记录;
根据所述第一状态和第二状态的流出交易记录的交易额,以及所述第二状态的流入交易记录的交易额,计算所述交易发生额。
其中,所述交易发生额,等于所述第一状态和所述第二状态的流出交易记录的交易额之和,减去所述第二状态的流入交易记录的交易额之和获得的流出交易额。
此外,为了进一步确保所述交易账户不被透支,降低所述交易账户发生透支的概率,在基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额的过程中还可以根据记账状态为第一状态和第二状态的流出交易记录的交易额计算交易发生额。
步骤S108,若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
具体实施时,在上述计算出所述交易发生额、查询到所述账户余额之后,以及在上述配置记账状态的过程中将所述流出交易记录的记账状态配置为第一状态的基础上,此处,在所述交易发生额小于或者等于所述账户余额的情况下进行记账执行处理的过程中,可选的,通过将所述流出交易记录的记账状态从所述第一状态更新为第二状态,实现所述记账执行处理。
此外,在所述交易发生额小于或者等于所述账户余额的情况下进行所述交易数据的记账执行处理的过程中,按照所述交易数据中包含的交易额针对所述交易账户进行资源冻结,在若资源冻结成功的情况下将所述流出交易记录的记账状态从第一状态更新为第二状态,并在在记账状态更新完成后对所述资源冻结获得的冻结资源进行解冻处理。
具体执行过程中,为确保记账处理过程中的数据一致性,提升记账处理成功率,本实施例提供的一种可选实施方式中,在上述创建的所述记账请求的记账事务的基础上,采用如下方式进行所述交易数据的记账执行处理:
执行所述记账事务的资源冻结操作;其中,所述资源冻结操作包括按照所述交易数据中包含的交易额针对所述交易账户进行资源冻结;
若所述资源冻结操作执行成功,则通过调用所述记账事务的记账确认操作的操作接口执行所述记账确认操作;
其中,所述记账确认操作包括:将所述流出交易记录的记账状态从第一状态更新为第二状态,以及对所述资源冻结获得的冻结资源进行解冻处理。
需要说明的是,实际执行过程中还可能存在资源冻结失败的可能,针对于此,为避免资源冻结失败的情况下发生数据不一致的情况下,本实施例提供的一种可选实施方式中,在进行所述交易数据的记账执行处理的过程中,则执行所述资源冻结操作的回滚处理,并进行所述交易数据的记账回滚处理;其中,所述记账回滚处理包括:将所述流出交易记录从所述交易记录池中删除,以此通过记账回滚处理来保证资源冻结失败的情况下的处理一致性。
除上述提供的通过资源冻结和记账确认进行记账执行处理的实现方式之外,为了降低资源冻结对交易账户的正常交易产生的影响,在进行所述交易数据的记账执行处理的过程中,还可执行所述记账事务的资源预留检测操作;其中,所述资源预留检测操作包括检测所述交易账户中是否存在满足所述交易额的资源,并对所述交易账户中所述交易额对应的资源标记预留标签,并在将流出交易记录的记账状态从第一状态更新为第二状态后,删除对所述预留标签。相应的,上述在对交易账户的账户余额进行查询过程中,将查询到的总余额减去预留标签标记的资源数额作为查询到的所述账户余额。
上述提供了在计算出所述交易发生额、查询到所述账户余额之后,所述交易发生额小于或者等于所述账户余额的情况下进行记账执行处理的具体过程,实际执行过程中还可能存在所述交易发生额大于所述账户余额的情况,这种情况存在极大可能会导致交易账户发生透支,为避免交易账户被透支,本实施例提供的一种可选实施方式中,若所述交易发生额大于所述账户余额,进行所述交易数据的记账回滚处理;其中,所述记账回滚处理包括:将所述流出交易记录从所述交易记录池中删除。
此外,为了提升交易账户的可用性,以及用户使用交易账户进行交易处理的灵活性,在所述交易发生额大于所述账户余额的情况下,计算所述交易发生额与所述账户余额的差额,并按照所述差额进行资源借贷,以满足所述交易账户的交易需求,并将资源借贷获得的借贷资源转入所述交易账户,或者将资源借贷获得的借贷资源以流入交易的方式参与记账处理,即:流入交易记录包括基于借贷资源流入所述交易账户这一交易创建的流入交易记录,比如调用第三方资源提供机构或者资源提供方提供的资源借贷接口,并在接口调用过程中将所述差额传入资源借贷接口的方式进行资源借贷申请,从而获得接口调用后返回的借贷资源,或者接口调用后触发的借贷资源流入所述交易账户这一交易的记账处理。
此外,还可针对所述记账处理方法设置透支检测机制,在检测到所述交易账户发生透支的情况下,按照所述交易账户的透支额进行资源借贷,以满足所述交易账户的交易需求,并将资源借贷获得的借贷资源转入所述交易账户,或者将资源借贷获得的借贷资源以流入交易的方式参与记账处理,即:流入交易记录包括基于借贷资源流入所述交易账户这一交易创建的流入交易记录,比如调用第三方资源提供机构或者资源提供方提供的资源借贷接口,并在接口调用过程中将所述透支额传入资源借贷接口的方式进行资源借贷申请,从而获得接口调用后返回的借贷资源,或者接口调用后触发的借贷资源流入所述交易账户这一交易的记账处理。
本实施例中,将所述交易账户的记账处理过程中分为记账和补账两个阶段,记账阶段包括上述提供的创建、存储交易记录的具体处理过程,补账阶段则是按照记账阶段创建并存储的交易记录,按照交易记录的交易额更新所述交易账户的账户余额的具体处理过程,以上具体介绍了记账阶段的具体实现过程,下述对补账阶段的具体实现过程进行说明。
具体的,补账处理是指对所述交易记录池中的交易记录进行补账处理,其中,所述补账处理在检测到补账指令时执行,或者,在检测到定时补账任务的任务被触发时执行。
本实施例提供的一种可选实施方式中,所述对所述交易记录池中的交易记录进行补账处理,包括:
在所述交易记录池中记账状态为第二状态的交易记录中确定进行补账处理的待补账交易记录;所述第二状态的交易记录包括第二状态的流入交易记录和第二状态的流出交易记录;
将所述待补账交易记录中的流入交易记录的记账状态从第二状态更新为第三状态;
通过开启异步线程的方式进行所述待补账交易记录的补账事务的提交。
可选的,所述补账事务,采用如下方式处理:
将所述待补账交易记录分为待补账流出交易记录和待补账流入交易记录,并计算所述待补账流出交易记录的总流出额和/或所述待补账流入交易记录的总流入额;
对所述交易账户进行加锁处理,并在加锁处理后基于所述总流出额和/或所述总流入额进行账户余额更新;
在所述账户余额更新完成后将所述待补账交易记录从所述交易记录池中删除。
上述补账处理过程中,通过将流入交易记录的记账状态从第二状态更新为第三状态,被更新后的第三状态的流入交易记录则不会参与所述交易发生额的计算,而流出交易记录的记账状态未被更新为第三状态,因此,流出交易记录在补账处理过程中仍将参与所述交易发生额的计算,这种记账状态的控制会形成一部分资源“结余”,而这部分资源“结余”能够保证所述交易账户100%不会发生透支;同时,在补账事务执行过程中,流入交易记录和流出交易记录的区分处理,能够避免流入交易记录和流出交易记录在补账事务执行过程中相互竞争锁,从而能够提升补账处理的效率,进而提升交易账户的记账处理整体过程的处理效率。
实际应用场景中,不仅存在针对交易账户的记账请求进行处理的需要,还可能存在交易账户的账户余额查询的实际应用需求,针对于此,本实施例提供的一种可选实施方式中,在接收到查询系统发送的所述交易账户的查询请求的情况下,生成携带所述交易发生额和所述账户余额的请求响应并向所述查询系统返回,或者,根据所述交易发生额和所述账户余额计算所述交易账户的实际可用余额(账户余额减去交易发生额),将所述实际可用余额向查询系统返回,以此来降低交易账户发生的透支的概率。
下述以本实施例提供的一种记账处理方法在热点账户场景的应用为例,对本实施例提供的记账处理方法进行进一步说明,参见图2,应用于热点账户场景的记账处理方法,具体包括下述步骤。
步骤S202,读取热点账户的记账请求携带的交易数据包含的交易类型。
步骤S204,若交易类型为流出交易类型,创建交易数据的流出交易记录并写入交易记录池,以及将流出交易记录的记账状态配置为第一状态。
具体执行过程中,步骤S204还可被替换为:若交易类型为流入交易类别,创建交易数据的流入交易记录,将流出交易记录写入交易记录池并配置记账状态,其中,配置记账状态是指将流入交易记录的记账状态配置为第一状态。
步骤S206,根据交易记录池中记账状态为第一状态和第二状态的流出交易记录的交易额,以及记账状态为第二状态的流入交易记录的交易额,计算交易发生额。
步骤S208,查询热点账户的账户余额。
步骤S210,判断账户余额是否大于交易发生额;
若是,执行步骤S212和步骤S214;
若否,生成记账失败的记账响应,或者,计算交易发生额与账户余额的差额并按照差额进行资源借贷。
步骤S212,按照交易数据中包含的交易额针对热点账户进行资源冻结。
步骤S214,若资源冻结成功,将流出交易记录的记账状态从第一状态更新为第二状态,以及对资源冻结获得的冻结资源进行解冻处理。
本说明书提供的一种记账处理装置实施例如下:
在上述的实施例中,提供了一种记账处理方法,与之相对应的,还提供了一种记账处理装置,下面结合附图进行说明。
参照图3,其示出了本实施例提供的一种记账处理装置示意图。
由于装置实施例对应于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
本实施例提供一种记账处理装置,包括:
交易类型读取模块302,被配置为读取交易账户的记账请求携带的交易数据包含的交易类型;
流出交易记录创建模块304,被配置为若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
交易发生额计算模块306,被配置为基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
记账执行处理模块308,被配置为若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
本说明书提供的一种记账处理设备实施例如下:
对应上述描述的一种记账处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种记账处理设备,该记账处理设备用于执行上述提供的记账处理方法,图4为本说明书一个或多个实施例提供的一种记账处理设备的结构示意图。
本实施例提供的一种记账处理设备,包括:
如图4所示,记账处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器401和存储器402,存储器402中可以存储有一个或一个以上存储应用程序或数据。其中,存储器402可以是短暂存储或持久存储。存储在存储器402的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括记账处理设备中的一系列计算机可执行指令。更进一步地,处理器401可以设置为与存储器402通信,在记账处理设备上执行存储器402中的一系列计算机可执行指令。记账处理设备还可以包括一个或一个以上电源403,一个或一个以上有线或无线网络接口404,一个或一个以上输入/输出接口405,一个或一个以上键盘406等。
在一个具体的实施例中,记账处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对记账处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
读取交易账户的记账请求携带的交易数据包含的交易类型;
若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
本说明书提供的一种存储介质实施例如下:
对应上述描述的一种记账处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种存储介质。
本实施例提供的存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:
读取交易账户的记账请求携带的交易数据包含的交易类型;
若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于记账处理方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应方法的实施,重复之处不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪30年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

Claims (15)

1.一种记账处理方法,包括:
读取交易账户的记账请求携带的交易数据包含的交易类型;
若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
2.根据权利要求1所述的记账处理方法,所述基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,包括:
确定所述交易记录池中记账状态为第一状态和第二状态的流出交易记录,以及记账状态为第二状态的流入交易记录;
根据所述第一状态和第二状态的流出交易记录的交易额,以及所述第二状态的流入交易记录的交易额,计算所述交易发生额。
3.根据权利要求1所述的记账处理方法,所述读取交易账户的记账请求携带的交易数据包含的交易类型步骤执行之后,且所述若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态步骤执行之前,还包括:
创建所述记账请求的记账事务,以及,在所述交易类型为流出交易类型的情况下,创建所述记账事务的子事务;
其中,所述创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池,基于所述子事务的事务执行实现。
4.根据权利要求3所述的记账处理方法,所述进行所述交易数据的记账执行处理,包括:
执行所述记账事务的资源冻结操作;其中,所述资源冻结操作包括按照所述交易数据中包含的交易额针对所述交易账户进行资源冻结;
若所述资源冻结操作执行成功,则通过调用所述记账事务的记账确认操作的操作接口执行所述记账确认操作;
其中,所述记账确认操作包括:将所述流出交易记录的记账状态从第一状态更新为第二状态,以及对所述资源冻结获得的冻结资源进行解冻处理。
5.根据权利要求4所述的记账处理方法,所述进行所述交易数据的记账执行处理,还包括:
若所述资源冻结操作执行失败,则执行所述资源冻结操作的回滚处理,并进行所述交易数据的记账回滚处理;
其中,所述记账回滚处理包括:将所述流出交易记录从所述交易记录池中删除。
6.根据权利要求1所述的记账处理方法,还包括:
若所述交易类型为流入交易类别,创建所述交易数据的流入交易记录;
将所述流入交易记录写入所述交易记录池,并将所述流入交易记录的记账状态配置为第一状态。
7.根据权利要求1所述的记账处理方法,所述配置记账状态包括:将所述流出交易记录的记账状态配置为第一状态;
相应的,所述进行所述交易数据的记账执行处理包括:将所述流出交易记录的记账状态从所述第一状态更新为第二状态。
8.根据权利要求1所述的记账处理方法,所述基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额步骤执行之后,还包括:
若所述交易发生额大于所述账户余额,进行所述交易数据的记账回滚处理;
其中,所述记账回滚处理包括:将所述流出交易记录从所述交易记录池中删除。
9.根据权利要求1所述的记账处理方法,还包括:
对所述交易记录池中的交易记录进行补账处理;
其中,所述补账处理在检测到补账指令时执行,或者,在检测到定时补账任务的任务被触发时执行。
10.根据权利要求9所述的记账处理方法,所述对所述交易记录池中的交易记录进行补账处理,包括:
在所述交易记录池中记账状态为第二状态的交易记录中确定进行补账处理的待补账交易记录;
将所述待补账交易记录中的流入交易记录的记账状态从第二状态更新为第三状态;
通过开启异步线程的方式进行所述待补账交易记录的补账事务的提交。
11.根据权利要求10所述的记账处理方法,所述补账事务,采用如下方式处理:
将所述待补账交易记录分为待补账流出交易记录和待补账流入交易记录,并计算所述待补账流出交易记录的总流出额和/或所述待补账流入交易记录的总流入额;
对所述交易账户进行加锁处理,并在加锁处理后基于所述总流出额和/或所述总流入额进行账户余额更新;
在所述账户余额更新完成后将所述待补账交易记录从所述交易记录池中删除。
12.根据权利要求1所述的记账处理方法,还包括:
在接收到查询系统发送的所述交易账户的查询请求的情况下,生成携带所述交易发生额和所述账户余额的请求响应并向所述查询系统返回。
13.一种记账处理装置,包括:
交易类型读取模块,被配置为读取交易账户的记账请求携带的交易数据包含的交易类型;
流出交易记录创建模块,被配置为若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
交易发生额计算模块,被配置为基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
记账执行处理模块,被配置为若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
14.一种记账处理设备,包括:
处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:
读取交易账户的记账请求携带的交易数据包含的交易类型;
若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
15.一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:
读取交易账户的记账请求携带的交易数据包含的交易类型;
若所述交易类型为流出交易类型,创建所述交易数据的流出交易记录,将所述流出交易记录写入交易记录池并配置记账状态;
基于所述交易记录池中交易记录的交易类型、记账状态和交易额计算交易发生额,并查询所述交易账户的账户余额;
若所述交易发生额小于或者等于所述账户余额,进行所述交易数据的记账执行处理。
CN202210707246.7A 2022-06-21 2022-06-21 记账处理方法及装置 Pending CN115034902A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210707246.7A CN115034902A (zh) 2022-06-21 2022-06-21 记账处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210707246.7A CN115034902A (zh) 2022-06-21 2022-06-21 记账处理方法及装置

Publications (1)

Publication Number Publication Date
CN115034902A true CN115034902A (zh) 2022-09-09

Family

ID=83125065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210707246.7A Pending CN115034902A (zh) 2022-06-21 2022-06-21 记账处理方法及装置

Country Status (1)

Country Link
CN (1) CN115034902A (zh)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106952158A (zh) * 2017-03-17 2017-07-14 证通股份有限公司 解决热点账户问题的记账方法及设备
CN108615184A (zh) * 2018-03-29 2018-10-02 阿里巴巴集团控股有限公司 一种记账的方法及装置
CN108762895A (zh) * 2018-05-17 2018-11-06 阿里巴巴集团控股有限公司 处理分布式事务的方法及装置
CN109034990A (zh) * 2018-08-31 2018-12-18 阿里巴巴集团控股有限公司 记账方法、装置及电子设备
CN109325763A (zh) * 2018-09-07 2019-02-12 阿里巴巴集团控股有限公司 一种计算机执行的交易处理方法和装置
CN109978540A (zh) * 2019-03-07 2019-07-05 银清科技(北京)有限公司 一种分布式记账方法、设备及系统
CN110134701A (zh) * 2019-04-30 2019-08-16 阿里巴巴集团控股有限公司 一种缓冲补账方法及装置
CN110175900A (zh) * 2019-04-30 2019-08-27 阿里巴巴集团控股有限公司 一种缓冲补账方法及装置
CN110889754A (zh) * 2019-11-19 2020-03-17 中信百信银行股份有限公司 提高不可透支热点账户处理效率的方法
CN111061748A (zh) * 2019-12-12 2020-04-24 吉林亿联银行股份有限公司 一种热点账户的记账方法及装置
CN111626736A (zh) * 2020-05-28 2020-09-04 上海银行股份有限公司 一种加快热点账户交易响应速率的方法
CN111861717A (zh) * 2020-07-24 2020-10-30 中国建设银行股份有限公司 一种合约账户的管理方法、装置、设备及存储介质
CN112381537A (zh) * 2020-11-05 2021-02-19 上海汇付数据服务有限公司 一种热点账户记账的方法
CN112712430A (zh) * 2020-12-29 2021-04-27 吉林亿联银行股份有限公司 互联网银行的高频账户管理方法及装置
CN112967140A (zh) * 2021-03-26 2021-06-15 武汉众邦银行股份有限公司 一种基于定时任务异步入账的热点账户交易数据处理方法
CN114398376A (zh) * 2020-09-09 2022-04-26 腾讯科技(深圳)有限公司 一种数据处理方法、设备及可读存储介质

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106952158A (zh) * 2017-03-17 2017-07-14 证通股份有限公司 解决热点账户问题的记账方法及设备
CN108615184A (zh) * 2018-03-29 2018-10-02 阿里巴巴集团控股有限公司 一种记账的方法及装置
CN108762895A (zh) * 2018-05-17 2018-11-06 阿里巴巴集团控股有限公司 处理分布式事务的方法及装置
CN109034990A (zh) * 2018-08-31 2018-12-18 阿里巴巴集团控股有限公司 记账方法、装置及电子设备
CN109325763A (zh) * 2018-09-07 2019-02-12 阿里巴巴集团控股有限公司 一种计算机执行的交易处理方法和装置
CN109978540A (zh) * 2019-03-07 2019-07-05 银清科技(北京)有限公司 一种分布式记账方法、设备及系统
CN110134701A (zh) * 2019-04-30 2019-08-16 阿里巴巴集团控股有限公司 一种缓冲补账方法及装置
CN110175900A (zh) * 2019-04-30 2019-08-27 阿里巴巴集团控股有限公司 一种缓冲补账方法及装置
CN110889754A (zh) * 2019-11-19 2020-03-17 中信百信银行股份有限公司 提高不可透支热点账户处理效率的方法
CN111061748A (zh) * 2019-12-12 2020-04-24 吉林亿联银行股份有限公司 一种热点账户的记账方法及装置
CN111626736A (zh) * 2020-05-28 2020-09-04 上海银行股份有限公司 一种加快热点账户交易响应速率的方法
CN111861717A (zh) * 2020-07-24 2020-10-30 中国建设银行股份有限公司 一种合约账户的管理方法、装置、设备及存储介质
CN114398376A (zh) * 2020-09-09 2022-04-26 腾讯科技(深圳)有限公司 一种数据处理方法、设备及可读存储介质
CN112381537A (zh) * 2020-11-05 2021-02-19 上海汇付数据服务有限公司 一种热点账户记账的方法
CN112712430A (zh) * 2020-12-29 2021-04-27 吉林亿联银行股份有限公司 互联网银行的高频账户管理方法及装置
CN112967140A (zh) * 2021-03-26 2021-06-15 武汉众邦银行股份有限公司 一种基于定时任务异步入账的热点账户交易数据处理方法

Similar Documents

Publication Publication Date Title
CN108460523B (zh) 一种风控规则生成方法和装置
JP6921206B2 (ja) データベース状態決定方法およびデバイスならびに整合性検証方法およびデバイス
CN107450979B (zh) 一种区块链共识方法及装置
CN108615184B (zh) 一种记账的方法及装置
CN106899666B (zh) 一种针对业务标识的数据处理方法及装置
CN112016921B (zh) 交易处理方法、装置及设备
CN111967849A (zh) 一种任务处理流程编排方法、装置及电子设备
CN108846749B (zh) 一种基于区块链技术的分片化的交易执行系统及方法
CN109598407B (zh) 一种业务流程的执行方法及装置
CN107016029B (zh) 一种业务数据的处理方法、装置及系统
CN114827165B (zh) 对多个交易进行分组的方法和区块链节点
CN110992040A (zh) 交易处理方法、装置及设备
CN110297837B (zh) 一种数据更新方法和装置、数据查询方法和装置
CN110992188B (zh) 交易处理方法、装置及设备
CN107578338B (zh) 一种业务发布方法、装置及设备
CN109034990B (zh) 记账方法、装置及电子设备
CN113079224A (zh) 一种账号绑定方法、装置、存储介质及电子设备
CN113744063B (zh) 区块链中执行交易的方法及装置
CN110175832B (zh) 一种中间账户资金监管方法、系统及设备
CN109376988B (zh) 一种业务数据的处理方法和装置
CN113421081A (zh) 支付处理方法及装置
CN111459474A (zh) 一种模板化的数据处理方法及装置
CN115034902A (zh) 记账处理方法及装置
CN110992039A (zh) 交易处理方法、装置及设备
CN115904907A (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