CN115907949A - 银行交易数据处理方法及装置 - Google Patents
银行交易数据处理方法及装置 Download PDFInfo
- Publication number
- CN115907949A CN115907949A CN202211489019.8A CN202211489019A CN115907949A CN 115907949 A CN115907949 A CN 115907949A CN 202211489019 A CN202211489019 A CN 202211489019A CN 115907949 A CN115907949 A CN 115907949A
- Authority
- CN
- China
- Prior art keywords
- transaction
- user account
- hotspot
- transaction request
- preset time
- 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
Links
Images
Classifications
-
- 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
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种银行交易数据处理方法及装置,涉及金融技术领域,其中该方法包括:根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率并存储在Redis服务器中;在交易请求数量大于预设数量阈值时,根据各用户账户的交易存储频率,对各用户账户进行排序;将在预设排序范围内的用户账户确定为热点用户账户;将一个应用服务器标记为热点应用服务器;将热点用户账户的交易请求发送至热点应用服务器;在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;将非热点用户账户的交易请求发送至没有热点标记的应用服务器。本发明可以在节约算力资源的同时提高银行交易数据处理效率。
Description
技术领域
本发明涉及金融技术领域,尤其涉及银行交易数据处理方法及装置。需要说明的是,本发明银行交易数据处理方法及装置可用于金融技术领域,也可用于除金融技术领域之外的任意领域,本发明银行交易数据处理方法及装置的应用领域不做限定。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在银行系统中,交易以账号为单位进行处理。随着电子支付的发展,会出现越来越多的热点账号。例如各知名电商平台的账户,在促销时段均存在大量动账交易。伴随而来的是银行后台大量的数据库读写操作。这就会导致整个系统的数据存储运行缓慢。单纯优化数据库硬件配置虽然能缓解该问题,但交易尖峰往往不会持续太久,在系统空闲时又会造成多余算力的极大浪费,当前银行交易数据处理方法处理效率低且算力资源浪费较大。
发明内容
本发明实施例提供一种银行交易数据处理方法,应用于交易调度服务器,用以在节约算力资源的同时提高银行交易数据的处理效率,该方法包括:
在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;
根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;
在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;
将在预设排序范围内的用户账户确定为热点用户账户;
从多个应用服务器中确定一个应用服务器标记为热点应用服务器;
将热点用户账户的交易请求发送至热点应用服务器;
在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;
将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
本发明实施例提供还一种银行交易数据处理方法,应用于热点应用服务器,用以在节约算力资源的同时提高银行交易数据的处理效率,该方法包括:
接收交易调度服务器发送的热点用户账户的交易请求;
在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;
对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;
将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;
向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。
本发明实施例还提供一种银行交易数据处理装置,应用于交易调度服务器,用以在节约算力资源的同时提高银行交易数据的处理效率,该装置包括:
获取模块,用于在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;
第一处理模块,用于根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;
第二处理模块,用于在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;
第三处理模块,用于将在预设排序范围内的用户账户确定为热点用户账户;
热点应用服务器确定模块,用于从多个应用服务器中确定一个应用服务器标记为热点应用服务器;
第四处理模块,用于将热点用户账户的交易请求发送至热点应用服务器;
第五处理模块,用于在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;
第六处理模块,用于将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
本发明实施例还提供一种银行交易数据处理装置,应用于热点应用服务器,用以在节约算力资源的同时提高银行交易数据的处理效率,该装置包括:
接收模块,用于接收交易调度服务器发送的热点用户账户的交易请求;
锁定模块,用于在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;
第一交易请求处理模块,用于对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;
解锁模块,用于将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;
发送模块,用于向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述银行交易数据处理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述银行交易数据处理方法。
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述银行交易数据处理方法。
本发明实施例中,交易调度服务器在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;将在预设排序范围内的用户账户确定为热点用户账户;从多个应用服务器中确定一个应用服务器标记为热点应用服务器;将热点用户账户的交易请求发送至热点应用服务器;在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;将非热点用户账户的交易请求发送至没有热点标记的应用服务器。这样,在交易请求高峰期,可以将热点用户账户(即交易请求量大的用户的用户账户)的交易请求分配至同一应用服务器进行处理,将非热点用户账户的交易请求发送至其他应用服务器,避免热点用户账户的交易请求占用所有应用服务器,在节约算力资源的同时提高银行交易数据处理效率。
本发明另一实施例中,热点应用服务器接收交易调度服务器发送的热点用户账户的交易请求;在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。这样,可以将热点用户的交易请求集中在热点应用服务器进行处理,避免热点用户账户的交易请求占用所有应用服务器,在节约算力资源的同时提高银行交易数据处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中提供的一种银行交易数据处理方法的流程图;
图2为本发明实施例中提供的一种数据库服务器、远程字典服务器、应用服务器、交易调度服务器之间的通讯连接示意图;
图3为本发明实施例中提供的另一种银行交易数据处理方法的流程图;
图4为本发明实施例中提供的一种银行交易数据处理装置的示意图;
图5为本发明实施例中提供的另一种银行交易数据处理装置的示意图;
图6为本发明实施例中提供的一种计算机设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
经研究发现,在银行系统中,交易以账号为单位进行处理。随着电子支付的发展,会出现越来越多的热点账号。例如各知名电商平台的账户,在促销时段均存在大量动账交易。伴随而来的是银行后台大量的数据库读写操作。这就会导致整个系统的数据存储运行缓慢。单纯优化数据库硬件配置虽然能缓解该问题,但交易尖峰往往不会持续太久,在系统空闲时又会造成多余算力的极大浪费,当前银行交易数据处理方法处理效率低且算力资源浪费较大
针对上述研究,如图1所示,本发明实施例提供的一种银行交易数据处理方法,包括:
S101:在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;
S102:根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;
S103:在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;
S104:将在预设排序范围内的用户账户确定为热点用户账户;
S105:从多个应用服务器中确定一个应用服务器标记为热点应用服务器;
S106:将热点用户账户的交易请求发送至热点应用服务器;
S107:在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;
S108:将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
本发明实施例中,在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;将在预设排序范围内的用户账户确定为热点用户账户;从多个应用服务器中确定一个应用服务器标记为热点应用服务器;将热点用户账户的交易请求发送至热点应用服务器;在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;将非热点用户账户的交易请求发送至没有热点标记的应用服务器。这样,在交易请求高峰期,可以将热点用户账户(即交易请求量大的用户的用户账户)的交易请求分配至同一应用服务器进行处理,将非热点用户账户的交易请求发送至其他应用服务器,避免热点用户账户的交易请求占用所有应用服务器,在节约算力资源的同时提高银行交易数据处理效率。
下面对上述银行交易数据处理方法加以详细说明。
如图2所示,为本发明实施例提供的一种数据库服务器、远程字典(Redis)服务器、应用服务器、交易调度服务器之间的通讯连接示意图,其中,交易调度服务器位于网关之后,可修改分布式系统的交易转发策略。在正常时段,交易调度服务器不进行干预,仅进行热点用户账户统计工作。
针对上述S101,第一预设时长可以结合实际的应用场景进行设置,历史交易请求对应的用户账户例如为历史交易请求的发起用户在发送历史交易请求时使用的用户账户。
针对上述S102,具体的,交易调度服务器中例如含有一个热点列表,将各用户账户的交易频率存放在热点列表中,将热点列表存储在Redis服务器中。
本发明一实施例中,根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,例如包括:根据第一预设时长内各历史交易请求对应的用户账户,确定在第一预设时长内各用户账户的第一提交数量,将第一预设时长内各用户账户的第一提交数量作为各用户账户的交易频率。
例如,历史交易请求1对应的用户账户1、历史交易请求2对应的用户账户2、历史交易请求3对应的用户账户1、历史交易请求4对应的用户账户1、历史交易请求5对应的用户账户2,则用户账户1的第一提交数量为3,用户账户1的交易频率为3,用户账户2的第一提交数量为2,用户账户2的交易频率为2。
此外,因为大多数交易属于非热点交易,如果长时间统计会占用大量的存储空间和计算资源,因此本发明一实施例中,根据第一预设时长内各历史交易请求对应的用户账户,确定在第一预设时长内各用户账户的第一提交数量,将第一预设时长内各用户账户的第一提交数量作为各用户账户的交易频率,包括:根据第一预设时长内各历史交易请求对应的用户账户,确定在第二预设时长内各用户账户的第二提交数量;其中,第二预设时长小于第一预设时长;将第二提交数量小于预设提交数量的用户账户确定为第一用户账户;将第二提交数量不小于预设提交数量的用户账户确定为第二用户账户;将第一用户账户在第一预设时长内的历史交易请求清除;根据各第二用户账户在第一预设时长内的历史交易请求,统计各第二用户账户在第一预设时长内的第一提交数量,将第一预设时长内各第二用户账户的第一提交数量作为各第二用户账户的交易频率。
例如,第一预设时长为15分钟,第二预设时长为5分钟,统计15分钟会占用大量的存储空间和计算资源,故在5分钟内交易量(第二提交数量)小于一定数值(即预设提交数量)的用户账户,会从热点列表中清理掉。
此外本发明一实施例中,根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中之后,还包括:接收到交易请求,且交易请求对应的用户账户为存储在Redis服务器中的用户账户时,根据下述公式更新Redis服务器中接收到的交易请求中用户账户的交易频率:接收到的交易请求中用户账户更新后的交易频率=接收到的交易请求中用户账户更新前的交易频率×(接收到的交易请求中用户账户的交易频率最近一次更新时刻-接收到的交易请求的接收时刻+第三预设时长)÷第三预设时长+1。
例如,接收到交易请求1,且交易请求1中的用户账户1的交易频率存储在Redis服务器中,则需要根据交易请求1更新用户账户1在Redis服务器中的交易频率,则用户账户1更新后的交易频率=用户账户1更新前的交易频率×(用户账户1的交易频率最近一次更新时刻-交易请求1的接收时刻+第三预设时长)÷第三预设时长+1。
针对上述S103~S108,在某一交易高峰期,也即某一时间区间内的交易请求数量大于预设数量阈值时,为了避免将交易量大的用户账户的交易请求分发到所有应用服务器导致所有服务器都被长时间占用、大多数用户长时间等待,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序,将在预设排序范围内的用户账户确定为热点用户账户,从多个应用服务器中确定一个应用服务器标记为热点应用服务器,将热点用户账户的交易请求发送至热点应用服务器,在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记,将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
这样,可以使得交易量大的热点用户的交易请求发送到同一个应用服务器(即热点应用服务器)上,避免热点用户的交易请求占用所有应用服务器,提高银行交易数据的处理效率。
另外,为了避免算力资源浪费,本发明一实施例中,接收到非热点用户账户的交易请求时,还包括:在热点应用服务器还存在剩余的系统资源时,将非热点用户账户的交易请求发送至热点应用服务器。
此外,如图3所示,本发明还提供一种银行交易数据处理方法,应用于热点应用服务器,包括:
S301:接收交易调度服务器发送的热点用户账户的交易请求;
S302:在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;
S303:对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;
S304:将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;
S305:向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。
本发明实施例中,热点应用服务器接收交易调度服务器发送的热点用户账户的交易请求;在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。这样,可以将热点用户的交易请求集中在热点应用服务器进行处理,避免热点用户账户的交易请求占用所有应用服务器,在节约算力资源的同时提高银行交易数据处理效率。
具体的,热点应用服务器在处理热点用户账户的多条交易时,首先应当锁定该热点用户账户所有的数据库记录,然后逐条处理交易。中间结果不回写数据库,而是暂存于Redis服务器,下条交易请求采用Redis服务器中的中间数据继续操作。由于Redis服务器的存取速度较数据库快3--20倍,所以该连续操作可大大减少数据库存储时间。
并且,在处理过程中,由于该热点用户账户所有的交易请求都集中在一台服务器(即热点应用服务器),故不存在各应用服务器间等待数据库锁的情况,节省了运行时间。在处理若干条(可设置,根据热点用户账户的交易频率,可以设置为5-50)交易请求后,将最终结果写入数据库,并释放数据库锁。
此外本发明一实施例中,还包括:接收交易调度服务器发送的非热点用户账户的交易请求,对非热点用户账户的交易请求进行处理。
本发明实施例中还提供了一种银行交易数据处理装置,应用于交易调度服务器,如下面的实施例所述。由于该装置解决问题的原理与应用于交易调度服务器的银行交易数据处理方法相似,因此该装置的实施可以参见应用于交易调度服务器的银行交易数据处理方法的实施,重复之处不再赘述。
如图4所示,为本发明实施例提供的一种银行交易数据处理装置的示意图,应用于交易调度服务器,包括:
获取模块401,用于在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;
第一处理模块402,用于根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;
第二处理模块403,用于在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;
第三处理模块404,用于将在预设排序范围内的用户账户确定为热点用户账户;
热点应用服务器确定模块405,用于从多个应用服务器中确定一个应用服务器标记为热点应用服务器;
第四处理模块406,用于将热点用户账户的交易请求发送至热点应用服务器;
第五处理模块407,用于在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;
第六处理模块408,用于将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
在一种可能的实施方式中,第一处理模块,具体用于根据第一预设时长内各历史交易请求对应的用户账户,确定在第一预设时长内各用户账户的第一提交数量,将第一预设时长内各用户账户的第一提交数量作为各用户账户的交易频率。
在一种可能的实施方式中,第一处理模块,具体用于根据第一预设时长内各历史交易请求对应的用户账户,确定在第二预设时长内各用户账户的第二提交数量;其中,第二预设时长小于第一预设时长;
将第二提交数量小于预设提交数量的用户账户确定为第一用户账户;
将第二提交数量不小于预设提交数量的用户账户确定为第二用户账户;
将第一用户账户在第一预设时长内的历史交易请求清除;
根据各第二用户账户在第一预设时长内的历史交易请求,统计各第二用户账户在第一预设时长内的第一提交数量,将第一预设时长内各第二用户账户的第一提交数量作为各第二用户账户的交易频率。
在一种可能的实施方式中,还包括:
数据更新模块,用于接收到交易请求,且交易请求对应的用户账户为存储在Redis服务器中的用户账户时,根据下述公式更新Redis服务器中接收到的交易请求中用户账户的交易频率:
接收到的交易请求中用户账户更新后的交易频率=接收到的交易请求中用户账户更新前的交易频率×(接收到的交易请求中用户账户的交易频率最近一次更新时刻-接收到的交易请求的接收时刻+第三预设时长)÷第三预设时长+1。
在一种可能的实施方式中,还包括:第七处理模块,用于在热点应用服务器还存在剩余的系统资源时,将非热点用户账户的交易请求发送至热点应用服务器。
本发明实施例中还提供了一种银行交易数据处理装置,应用于热点应用服务器,如下面的实施例所述。由于该装置解决问题的原理与热点应用服务器的银行交易数据处理方法相似,因此该装置的实施可以参见热点应用服务器的银行交易数据处理方法的实施,重复之处不再赘述。
如图5所示,为本发明实施例提供的另一种银行交易数据处理装置的示意图,应用于热点应用服务器,包括:
接收模块501,用于接收交易调度服务器发送的热点用户账户的交易请求;
锁定模块502,用于在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;
第一交易请求处理模块503,用于对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;
解锁模块504,用于将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;
发送模块505,用于向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。
在一种可能的实施方式中,还包括:第二交易请求处理模块,用于接收交易调度服务器发送的非热点用户账户的交易请求,对非热点用户账户的交易请求进行处理。
基于前述发明构思,如图6所示,本发明还提出了一种计算机设备600,包括存储器610、处理器620及存储在存储器610上并可在处理器620上运行的计算机程序630,所述处理器620执行所述计算机程序630时实现前述银行交易数据处理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述银行交易数据处理方法。
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述银行交易数据处理方法。
本发明实施例中,交易调度服务器在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;将在预设排序范围内的用户账户确定为热点用户账户;从多个应用服务器中确定一个应用服务器标记为热点应用服务器;将热点用户账户的交易请求发送至热点应用服务器;在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;将非热点用户账户的交易请求发送至没有热点标记的应用服务器。这样,在交易请求高峰期,可以将热点用户账户(即交易请求量大的用户的用户账户)的交易请求分配至同一应用服务器进行处理,将非热点用户账户的交易请求发送至其他应用服务器,避免热点用户账户的交易请求占用所有应用服务器,在节约算力资源的同时提高银行交易数据处理效率。
本发明另一实施例中,热点应用服务器接收交易调度服务器发送的热点用户账户的交易请求;在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。这样,可以将热点用户的交易请求集中在热点应用服务器进行处理,避免热点用户账户的交易请求占用所有应用服务器,在节约算力资源的同时提高银行交易数据处理效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种银行交易数据处理方法,其特征在于,应用于交易调度服务器,包括:
在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;
根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;
在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;
将在预设排序范围内的用户账户确定为热点用户账户;
从多个应用服务器中确定一个应用服务器标记为热点应用服务器;
将热点用户账户的交易请求发送至热点应用服务器;
在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;
将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
2.如权利要求1所述的银行交易数据处理方法,其特征在于,根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,包括:
根据第一预设时长内各历史交易请求对应的用户账户,确定在第一预设时长内各用户账户的第一提交数量,将第一预设时长内各用户账户的第一提交数量作为各用户账户的交易频率。
3.如权利要求2所述的银行交易数据处理方法,其特征在于,根据第一预设时长内各历史交易请求对应的用户账户,确定在第一预设时长内各用户账户的第一提交数量,将第一预设时长内各用户账户的第一提交数量作为各用户账户的交易频率,包括:
根据第一预设时长内各历史交易请求对应的用户账户,确定在第二预设时长内各用户账户的第二提交数量;其中,第二预设时长小于第一预设时长;
将第二提交数量小于预设提交数量的用户账户确定为第一用户账户;
将第二提交数量不小于预设提交数量的用户账户确定为第二用户账户;
将第一用户账户在第一预设时长内的历史交易请求清除;
根据各第二用户账户在第一预设时长内的历史交易请求,统计各第二用户账户在第一预设时长内的第一提交数量,将第一预设时长内各第二用户账户的第一提交数量作为各第二用户账户的交易频率。
4.如权利要求1所述的银行交易数据处理方法,其特征在于,根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中之后,还包括:
接收到交易请求,且交易请求对应的用户账户为存储在Redis服务器中的用户账户时,根据下述公式更新Redis服务器中接收到的交易请求中用户账户的交易频率:
接收到的交易请求中用户账户更新后的交易频率=接收到的交易请求中用户账户更新前的交易频率×(接收到的交易请求中用户账户的交易频率最近一次更新时刻-接收到的交易请求的接收时刻+第三预设时长)÷第三预设时长+1。
5.如权利要求1所述的银行交易数据处理方法,其特征在于,接收到非热点用户账户的交易请求时,还包括:
在热点应用服务器还存在剩余的系统资源时,将非热点用户账户的交易请求发送至热点应用服务器。
6.一种银行交易数据处理方法,其特征在于,应用于热点应用服务器,包括:
接收交易调度服务器发送的热点用户账户的交易请求;
在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;
对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;
将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;
向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。
7.如权利要求6所述的银行交易数据处理方法,其特征在于,还包括:
接收交易调度服务器发送的非热点用户账户的交易请求,对非热点用户账户的交易请求进行处理。
8.一种银行交易数据处理装置,其特征在于,应用于交易调度服务器,包括:
获取模块,用于在用户授权的情况下,获取第一预设时长内各历史交易请求对应的用户账户;
第一处理模块,用于根据第一预设时长内各历史交易请求对应的用户账户,确定各用户账户的交易频率,将各用户账户的交易频率存储在Redis服务器中;
第二处理模块,用于在任一时间区间内的交易请求数量大于预设数量阈值时,根据Redis服务器中存储的各用户账户的交易存储频率,对各用户账户进行排序;
第三处理模块,用于将在预设排序范围内的用户账户确定为热点用户账户;
热点应用服务器确定模块,用于从多个应用服务器中确定一个应用服务器标记为热点应用服务器;
第四处理模块,用于将热点用户账户的交易请求发送至热点应用服务器;
第五处理模块,用于在热点应用服务器将热点用户账户的全部交易请求处理完后,取消对热点应用服务器的热点标记;
第六处理模块,用于将非热点用户账户的交易请求发送至没有热点标记的应用服务器。
9.如权利要求8所述的银行交易数据处理装置,其特征在于,第一处理模块,具体用于根据第一预设时长内各历史交易请求对应的用户账户,确定在第一预设时长内各用户账户的第一提交数量,将第一预设时长内各用户账户的第一提交数量作为各用户账户的交易频率。
10.如权利要求9所述的银行交易数据处理装置,其特征在于,第一处理模块,具体用于根据第一预设时长内各历史交易请求对应的用户账户,确定在第二预设时长内各用户账户的第二提交数量;其中,第二预设时长小于第一预设时长;
将第二提交数量小于预设提交数量的用户账户确定为第一用户账户;
将第二提交数量不小于预设提交数量的用户账户确定为第二用户账户;
将第一用户账户在第一预设时长内的历史交易请求清除;
根据各第二用户账户在第一预设时长内的历史交易请求,统计各第二用户账户在第一预设时长内的第一提交数量,将第一预设时长内各第二用户账户的第一提交数量作为各第二用户账户的交易频率。
11.如权利要求8所述的银行交易数据处理装置,其特征在于,还包括:
数据更新模块,用于接收到交易请求,且交易请求对应的用户账户为存储在Redis服务器中的用户账户时,根据下述公式更新Redis服务器中接收到的交易请求中用户账户的交易频率:
接收到的交易请求中用户账户更新后的交易频率=接收到的交易请求中用户账户更新前的交易频率×(接收到的交易请求中用户账户的交易频率最近一次更新时刻-接收到的交易请求的接收时刻+第三预设时长)÷第三预设时长+1。
12.一种银行交易数据处理装置,其特征在于,应用于热点应用服务器,包括:
接收模块,用于接收交易调度服务器发送的热点用户账户的交易请求;
锁定模块,用于在热点用户账户的交易请求为批量交易请求时,锁定热点用户账户在数据库服务器中的数据记录;
第一交易请求处理模块,用于对热点用户账户的批量交易请求进行逐条处理,将热点用户账户的每一条交易请求的中间处理结果存储在Redis服务器中,以供处理热点用户账户的下一条交易请求时使用,直至处理完热点用户账户的批量交易请求;
解锁模块,用于将热点用户账户的批量交易请求的处理结果写入数据库服务器,解锁热点用户账户在数据库服务器中的数据记录;
发送模块,用于向交易调度服务器发送处理完成通知,以供交易调度服务器根据处理完成通知取消对热点应用服务器的热点标记。
13.如权利要求12所述的银行交易数据处理装置,其特征在于,还包括:
第二交易请求处理模块,用于接收交易调度服务器发送的非热点用户账户的交易请求,对非热点用户账户的交易请求进行处理。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一所述方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至7任一所述方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现权利要求1至7任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211489019.8A CN115907949A (zh) | 2022-11-25 | 2022-11-25 | 银行交易数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211489019.8A CN115907949A (zh) | 2022-11-25 | 2022-11-25 | 银行交易数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115907949A true CN115907949A (zh) | 2023-04-04 |
Family
ID=86489166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211489019.8A Pending CN115907949A (zh) | 2022-11-25 | 2022-11-25 | 银行交易数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115907949A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117057799A (zh) * | 2023-10-11 | 2023-11-14 | 腾讯科技(深圳)有限公司 | 资产数据处理方法、装置、设备及存储介质 |
-
2022
- 2022-11-25 CN CN202211489019.8A patent/CN115907949A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117057799A (zh) * | 2023-10-11 | 2023-11-14 | 腾讯科技(深圳)有限公司 | 资产数据处理方法、装置、设备及存储介质 |
CN117057799B (zh) * | 2023-10-11 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 资产数据处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6961835B2 (en) | System and method for autonomically reallocating memory among buffer pools | |
US20090307329A1 (en) | Adaptive file placement in a distributed file system | |
CN103092903A (zh) | 数据库日志并行化 | |
CN101556678A (zh) | 一种批处理业务的处理方法、系统及业务处理控制设备 | |
CN103544153A (zh) | 一种基于数据库的数据更新方法和系统 | |
CN112738172B (zh) | 区块链节点的管理方法、装置、计算机设备和存储介质 | |
CN102043859A (zh) | 数据更新方法及装置 | |
CN106502875A (zh) | 一种基于云计算的日志生成方法及系统 | |
CN110706101A (zh) | 在区块链中并发执行交易的方法和装置 | |
CN110018996A (zh) | 一种分布式存储系统的快照回滚方法及相关装置 | |
CN115907949A (zh) | 银行交易数据处理方法及装置 | |
CN109614411B (zh) | 数据存储方法、设备和存储介质 | |
WO2021129005A1 (zh) | 一种区块链状态变更交易追溯的方法及装置 | |
CN109976896B (zh) | 业务排重处理方法和装置 | |
CN108664322A (zh) | 数据处理方法及系统 | |
JP2001229058A (ja) | データベースサーバ処理方法 | |
US20200042534A1 (en) | Moving replicated data in a cloud environment | |
CN111026748B (zh) | 网络访问频次管控的数据压缩方法、装置及系统 | |
CN113342274B (zh) | 一种数据处理方法及装置 | |
US7647296B2 (en) | Method for estimating a first access time of transactions accessing a database object | |
CN108874325B (zh) | 数据打印方法及系统 | |
CN109901931B (zh) | 一种归约函数数量确定方法、装置及系统 | |
CN114095436A (zh) | 区块链交易的处理方法、存储介质和计算机系统 | |
CN113419792A (zh) | 一种事件处理方法、装置、终端设备和存储介质 | |
CN115826886B (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 |