【技术实现步骤摘要】
一种缓冲补账方法及装置
本说明书一个或多个涉及计算机领域,尤其涉及一种缓冲补账方法及装置。
技术介绍
目前,随着互联网技术的快速发展,账务处理业务量也随之增大,账务数据库中某些账户常常会在瞬间产生多个并发操作,但所有对应的并发线程中只有一个线程能够持有当前账户的资源锁,其他线程必须等待该锁被释放后再逐一进行记账处理,这种情况会严重影响账务数据库的性能,即对于交易请求量比较大的热点账户,实时记账无法满足需求。为了解决这个问题,通常对账务处理采用缓冲机制,引入缓冲记账,缓冲记账不实时更新账户余额,而是先记录缓冲记账明细,后台异步任务基于缓冲记账明细更新账户余额,即先对账户的交易请求记录临时记账凭证,而将更新账户余额的操作延后,也就是采用缓冲补账的方式对账户余额进行更新,该缓冲补账过程主要是基于记账阶段所生成的缓冲记录对账户进行补账操作,以更新账户余额。其中,在缓冲补账过程中,需要先基于上游业务系统记录的交易时间进行缓冲记录捞取,并且,每次捞取的缓冲记录的数量固定,然后,直接基于捞取到的所有的缓冲记录进行缓冲补账,在此过程中,由于交易时间不可控,一旦交易时间发生错误,将出现缓冲补账乱序的问题,同时,因每个缓冲补账的缓冲记录的数量固定,可能出现将同一事务号的多个缓冲记录分拆到两次缓冲补账过程。由此可知,需要提供一种能够避免补账乱序及同一事务号的缓冲记录被分开补账的缓冲补账方法。
技术实现思路
本说明书一个或多个实施例的目的是提供一种缓冲补账方法及装置,既能够解决因上游业务系统记录的交易时间错误而导致缓冲记录捞取乱序的问题,也能够解决同一事务号的多个缓冲记录被分开补账的 ...
【技术保护点】
1.一种缓冲补账方法,包括:从待缓冲补账的缓冲记录列表中,按照预设数量根据各缓冲记录的先后顺序依次捞取缓冲记录,其中,所述先后顺序是基于记账时间对缓冲记录进行排序确定的,事务标识相同的缓冲记录的记账时间相同;针对每次缓冲记录捞取操作,根据实际捞取数量和所述预设数量的大小关系,在本次捞取到的所述缓冲记录中选取目标缓冲记录;基于所述目标缓冲记录,对目标账户进行缓冲补账操作,以更新所述目标账户的账户余额并生成相应的交易记录。
【技术特征摘要】
1.一种缓冲补账方法,包括:从待缓冲补账的缓冲记录列表中,按照预设数量根据各缓冲记录的先后顺序依次捞取缓冲记录,其中,所述先后顺序是基于记账时间对缓冲记录进行排序确定的,事务标识相同的缓冲记录的记账时间相同;针对每次缓冲记录捞取操作,根据实际捞取数量和所述预设数量的大小关系,在本次捞取到的所述缓冲记录中选取目标缓冲记录;基于所述目标缓冲记录,对目标账户进行缓冲补账操作,以更新所述目标账户的账户余额并生成相应的交易记录。2.根据权利要求1所述的方法,其中,在按照预设数量根据各缓冲记录的先后顺序依次捞取缓冲记录之前,还包括:根据业务系统的记账请求,生成初始缓冲记录列表,其中,所述初始缓冲记录列表包括:记账时间字段和事务标识字段;根据所述记账时间字段和所述事务标识字段,对所述初始缓冲记录列表中的多个缓冲记录进行排序;将排序后的初始缓冲记录列表确定为待缓冲补账的缓冲记录列表。3.根据权利要求1所述的方法,其中,所述根据实际捞取数量和所述预设数量的大小关系,在本次捞取到的所述缓冲记录中选取目标缓冲记录,包括:若实际捞取数量等于所述预设数量,则舍弃本次捞取到的所述缓冲记录中排序最后的事务标识的缓冲记录,将剩余的缓冲记录确定为目标缓冲记录;若实际捞取数量小于所述预设数量,则将本次捞取到的所述缓冲记录均确定为目标缓冲记录。4.根据权利要求3所述的方法,其中,在舍弃本次捞取到的所述缓冲记录中排序最后的事务标识的缓冲记录之后,还包括:将舍弃的所述缓冲记录重新添加到所述待缓冲补账的缓冲记录列表中的头部。5.根据权利要求2所述的方法,其中,所述根据业务系统的记账请求,生成初始缓冲记录列表,包括:确定业务系统的记账请求对应的当前事务标识、以及已处理的记账请求对应的历史事务标识;根据所述当前事务标识和所述历史事务标识,确定当前记账时间;在初始缓冲记录列表中,添加针对所述记账请求所生成的包含所述当前记账时间的缓冲记录。6.根据权利要求5所述的方法,其中,所述根据所述当前事务标识和所述历史事务标识,确定当前记账时间,包括:判断所述历史事务标识中是否存在所述当前事务标识;若判断结果为是,则将与所述当前事务标识相同的历史事务标识对应的记账时间确定为当前记账时间;若判断结果为否,则将当前实际时间确定为当前记账时间。7.一种缓冲补账装置,包括:记录捞取模块,用于从待缓冲补账的缓冲记录列表中,按照预设数量根据各缓冲记录的先后顺序依次捞取缓冲记录,其中,所述先后顺序是基于记账时间对缓冲记录进行排序确定的,事务标识相同的缓冲记录的记账时间相同;记录选取模块,用于针对每次缓冲记录捞取操作,根据实际捞取数量和所述预设数量的大小关系,在本次捞取到的所述缓冲记录中选取目标缓冲记录;缓冲补账模块,用于基于所述目标缓冲记录,对目标账户进行缓冲补账操作,以更新...
【专利技术属性】
技术研发人员:王磊,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。