CN117221237A - 交易方法、装置、设备、介质及程序产品 - Google Patents
交易方法、装置、设备、介质及程序产品 Download PDFInfo
- Publication number
- CN117221237A CN117221237A CN202311254792.0A CN202311254792A CN117221237A CN 117221237 A CN117221237 A CN 117221237A CN 202311254792 A CN202311254792 A CN 202311254792A CN 117221237 A CN117221237 A CN 117221237A
- Authority
- CN
- China
- Prior art keywords
- token
- transaction
- account
- target account
- transaction request
- 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
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000012545 processing Methods 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种交易方法、装置、设备、介质及程序产品。方法包括:从第一交易队列中,获取第一交易请求;基于第一交易请求的交易类型确定交易类型对应的令牌获取时间;根据目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在令牌获取时间内目标账户的令牌桶中至少存在一个令牌的情况下,从目标账户的令牌桶中获取目标账户的令牌;基于目标账户的令牌,对第一交易请求进行处理。可以通过设置令牌获取时间控制不同类型交易请求的优先级。在交易请求集中的情况下,实现优先处理优先级较高的类型的交易请求,从而实现高峰限流。
Description
技术领域
本申请属于金融信息服务技术领域,尤其涉及一种交易方法、装置、设备、介质及程序产品。
背景技术
在一个资金账户系统中,可能会有多个用户同时进行充值、提现、转账等操作。然而,一个资金账户同时进行的交易或操作的数量即并发数有限,如果超过这个并发数,系统可能会出现性能瓶颈、响应延迟增加或者部分操作被阻塞等问题。
现有技术中,通常是对资金账户进行流量限制,如果超过账户支持的流量,则转成异步处理。然而,现有的限流方法,针对所有类型的交易请求采用相同的限流策略,资源分配不合理,由此会导致账户交易处理效率低。
发明内容
本申请实施例提供一种交易方法、装置、设备、介质及程序产品,能够提高账户安全性。
一方面,本申请实施例提供一种交易方法,所述方法包括:
从第一交易队列中,获取第一交易请求,所述第一交易队列用于存储与目标账户关联的交易请求,所述第一交易请求为所第一交易队列中位于队头的交易请求;
基于所述第一交易请求的交易类型确定所述交易类型对应的令牌获取时间;
根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌;
基于所述目标账户的令牌,对所述第一交易请求进行处理。
在一些实施例中,所述根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌,包括:
在所述剩余令牌数小于等于零的情况下,根据所述令牌生成速度确定所述令牌桶生成新令牌的目标时间;
在所述目标时间不超过所述令牌获取时间的情况下,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌;
在目标账户的令牌桶中生成新的令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌。
在一些实施例中,所述基于所述第一交易请求的交易类型确定所述交易类型对应的令牌获取时间之后,还包括:
根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶为空的情况下,将所述第一交易请求存入第二交易队列,所述第二交易队列为与至少一个备用账户关联的队列。
在一些实施例中所述将所述第一交易请求存入第二交易队列之后,包括:
从所述第二交易队列中取出第二交易请求,所述第二交易请求为所述第二交易队列中权重最低的交易请求,所述第二交易请求的权重根据所述交易请求的交易类型确定;
从至所述少一个备用账户的令牌桶中获取令牌;
基于所述备用账户的令牌,对所述第二交易请求进行处理。
在一些实施例中,所述从至少一个备用账户的令牌桶中获取所述备用账户的令牌,包括:
从第一备用账户的令牌桶中获取令牌,所述第一备用账户为所述至少一个备用账户中第一优先级的账户;
在所述第一备用账户的令牌桶为空的情况下,从第二备用账户的令牌桶中获取第二备用账户的令牌,所述第二备用账户为所述至少一个备用账户中第二优先级的账户,所述第一优先级低于所述第二优先级。
在一些实施例中,所述从至少一个备用账户的令牌桶中获取所述备用账户的令牌,包括:
确定与所述第二交易请求的交易类型对应的第三备用账户,所述第三备用账户为所述至少一个备用账户中的账户;
从所述第三备用账户的令牌桶中获取令牌。
再一方面,本申请实施例提供了一种交易装置,所述装置包括:
第一获取模块,用于从第一交易队列中,获取第一交易请求,所述第一交易队列用于存储与目标账户关联的交易请求,所述第一交易请求为所第一交易队列中位于队头的交易请求;
第一确定模块,用于基于所述第一交易请求的交易类型确定所述交易类型对应的令牌获取时间;
第二获取模块,用于根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌;
第一处理模块,用于基于所述目标账户的令牌,对所述第一交易请求进行处理。
再一方面,本申请实施例提供了一种计算机存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如上述所述的交易方法。
再一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如上述交易方法。
本申请实施例的交易方法、装置、设备及计算机存储介质,从第一交易队列中,获取第一交易请求;基于第一交易请求的交易类型确定交易类型对应的令牌获取时间;根据目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在令牌获取时间内目标账户的令牌桶中至少存在一个令牌的情况下,从目标账户的令牌桶中获取目标账户的令牌;基于目标账户的令牌,对第一交易请求进行处理。即,可以先将接收到的交易请求存储与第一交易队列,从队头取出先接收到的交易请求,根据该交易请求对应的令牌获取时间,从目标账户的令牌桶中获取令牌,进行交易处理。由此,不同类型的交易设置有不同的令牌获取时间,令牌获取时间越长的交易请求获得令牌的概率就越大,由此,可以通过设置令牌获取时间控制不同类型交易请求的优先级。在交易请求集中的情况下,实现优先处理优先级较高的类型的交易请求,从而实现高峰限流。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的交易方法的流程示意图;
图2是本申请另一个实施例提供的交易方法的示意图;
图3是本申请另一个实施例提供的交易装置的结构示意图;
图4是本申请又一个实施例提供的交易设备的结构示意图。
具体实施方式
下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
在令牌桶算法中,令牌生产算法以恒定速率不断生成新的令牌放进令牌桶中,当数量达到令牌桶的上线时,生成的新令牌会被丢弃掉。对客户端请求来说,每次请求处理前,先要从令牌桶中获取令牌,如果获取到令牌,则进出接口服务处理相关请求,否则请求被拒绝。
针对银行的消费金融业务如图2所示,一个资金账户可能需要同时响应多种类型的交易请求,如客户发起的支用、主动还款等其他交易请求,系统发起的批扣、日间补扣等交易请求,客服发起的运营调账等交易请求。在现有技术中,一个资金账户的下并发数通常只有60左右的TPS,无法满足消费金融业务的高并发要求,在交易请求集中的情况下,针对每个交易请求采用同样的处理方法,导致对于时效性要求较高的交易请求和时效性要求较低的交易请求,分配相同的令牌资源,无法满足交易优先响应的要求。
为解决现有技术中的技术问题,图1示出了本申请一个实施例提供的交易方法的流程示意图。如图1所示,本申请实施例提供的交易方法,包括以下步骤:S101至S104:
S101、从第一交易队列中,获取第一交易请求,第一交易队列用于存储与目标账户关联的交易请求,第一交易请求为所第一交易队列中位于队头的交易请求。
这里第一交易队列为先进先出队列。
根据第一交易请求中的相关信息,确定与之关联的目标账户;根据目标账户,在系统中找到对应的令牌桶,它存储了可用数量的令牌;在令牌获取时间内,判断目标账户的令牌桶中是否有足够的令牌。令牌的数量可以表示可以执行的操作次数或资源单位;如果目标账户的令牌桶中有足够的令牌,就从令牌桶中获取令牌。
S102、基于第一交易请求的交易类型确定交易类型对应的令牌获取时间,不同交易类型对应不同的令牌获取时间。
可以通过解析第一交易请求中的交易类型字段,确定该交易类型对应的令牌获取时间。
在令牌获取时间内,从目标账户的令牌桶中获取目标账户的令牌,目标账户为与第一交易请求关联的账户。
S103、根据目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在令牌获取时间内目标账户的令牌桶中至少存在一个令牌的情况下,从目标账户的令牌桶中获取目标账户的令牌。
S104、基于目标账户的令牌,对第一交易请求进行处理。
在成功获取目标账户的令牌后,使用令牌来处理相应的交易请求,对目标账户进行动账,完成交易。
本申请实施例的交易方法,针对不同类型的交易设置不同的令牌获取时间,令牌获取时间越长的交易请求获得令牌的概率就越大,由此,可以通过设置令牌获取时间控制不同类型交易请求的优先级。在交易请求集中的情况下,实现优先处理优先级较高的类型的交易请求,从而实现高峰限流。
在一个示例中,对不同交易请求设置不同的等待时间可以通过以下步骤来实现:(1)定义请求类型:首先需要明确定义不同的交易请求类型。这可以基于业务需求、优先级或其他标准进行分类,例如高优先级请求、低优先级请求、特殊请求等等。(2)确定令牌获取时间:为每个请求类型确定相应的令牌获取时间(即最长等待时间)。根据业务需求和性能要求,可以针对每个请求类型设定不同的最长等待时间。由此不同类型的请求在等待令牌的过程中可以具有不同的容忍度。(3)请求参数设置:在发送请求时,将相应的请求类型和相关的最长等待时间作为请求参数一起发送给系统。这样系统就能根据请求类型确定最长等待时间,并据此来限制令牌的获取时间。(4)系统处理逻辑:系统接收到请求后,根据请求的类型和最长等待时间参数来进行相应的处理。如果请求在等待令牌过程中超过了最长等待时间,可以选择拒绝请求、降低请求的优先级,或者采取其他适当的措施。通过对不同请求设置不同的最长等待时间,可以根据业务需求灵活地控制交易请求的优先级和处理速度,有效管理系统的资源和性能。
在一些实施例中,上述S103可以包括如下步骤:
在剩余令牌数小于等于零的情况下,根据令牌生成速度确定令牌桶生成新令牌的目标时间;
在目标时间不超过令牌获取时间的情况下,确定在令牌获取时间内目标账户的令牌桶中至少存在一个令牌;
在目标账户的令牌桶中生成新的令牌的情况下,从目标账户的令牌桶中获取目标账户的令牌。
具体地,根据目标账户的令牌桶中当前剩余令牌数和令牌生成速度,计算出生成新令牌所需的时间;根据令牌获取时间,判断目标账户的令牌桶是否能在该时间内生成至少一个新令牌;确定目标账户的令牌桶可以在令牌获取时间内生成新令牌,则在目标账户的令牌桶生新的令牌时,从令牌桶中获取令牌。由此根据不同的交易请求类型设置的令牌获取时间,可以控制不同的交易的优先级。令牌获取时间越长,交易请求越容易获取到令牌。
在一些实施例中,上述在令牌获取时间内,且目标账户的令牌桶为空的情况下,将第一交易请求存入第一交易队列之后,还包括:
在令牌获取时间内,未从目标账户的令牌桶中获取到令牌的情况下,将第一交易请求存入第二交易队列。
在本实施例中,系统可以在令牌获取时间内尝试获取目标账户的令牌,如果未能获取到,将第一交易请求存入第二交易队列,进行异步处理。这样可以实现对交易请求的调度和限流,避免交易请求堵塞。
在一些实施例中,上述S102之后,还可以包括如下步骤:
从第二交易队列中取出第二交易请求,第二交易请求为第二交易队列中权重最低的交易请求,第二交易请求的权重根据交易请求的交易类型确定;
从至少一个备用账户的令牌桶中获取令牌;
基于备用账户的令牌,对第二交易请求进行处理。
具体地,将第一交易请求存入第二交易队列;根据交易请求的交易类型来确定其权重,然后从第二交易队列中选择权重最低的第二交易请求,并尝试从备用账户的令牌桶中获取令牌。一旦获取到令牌,系统就可以使用备用账户的令牌来处理第二交易请求,执行相应的操作。由此可以限制目标账户接收到大量并发请求导致的系统堵塞,将部分交易请求分流至备用账户处理,确保交易请求都能够得到有效处理。
在一些实施例中,上述从至少一个备用账户的令牌桶中获取备用账户的令牌,可以包括:
从第一备用账户的令牌桶中获取令牌,第一备用账户为至少一个备用账户中第一优先级的账户;
在第一备用账户的令牌桶为空的情况下,从第二备用账户的令牌桶中获取第二备用账户的令牌,第二备用账户为至少一个备用账户中第二优先级的账户,第一优先级低于第二优先级。
在本实施例中,还可以对多个备用账户设置优先级,优先使用优先级低的备用账户,即优先从优先级低的备用账户的令牌桶中获取令牌,由此,可以更好地提高交易请求处理的效率。
在一些实施例中,上述从至少一个备用账户的令牌桶中获取备用账户的令牌,可以包括:
基于第二交易请求的交易类型确定交易类型对应的第三备用账户,第三备用账户为至少一个备用账户中的账户;
从第三备用账户的令牌桶中获取令牌。
具体地,可以根据不同交易请求类型设置对应的备用账户,由此可以将交易请求分流至与交易类型对应的备用账户中去,提高交易请求处理的效率。
在本实施例中,可以根据交易类型选择支持的交易账户。
在通过备用账户处理交易之后,再根据交易过程对目标账户进行相应的动账处理。
在一个示例中,1.根据交易的优先级对账进行限流:
(1)根据账户支持的TPS设置流量令牌大小,从而控制账户的并发数(例如,设置令牌桶容量,令牌生成速度等);
(2)根据不同的交易设置获取到流量令牌的最长时间,从而控制不同的交易优先级;
(3)如果在规定时间没有获取到令牌,则发送到异步队列来处理。
2.设置权重队列来对交易进行优先级控制
(1)在交易转异步处理的时候,根据交易的优先级进行权重排队处理;
(2)根据队列的权重从小到大进行交易处理;
3.使用备用账户来处理队列里面的交易数据
(1)根据交易类型选择支持的交易账户;
(2)根据不同的交易设置获取到流量令牌的最长时间,从而控制不同的交易优先级;
(3)如果在规定时间内获取不到令牌,则交易处理失败。
相应地,本申请还提供了交易装置的具体实现方式。请参见以下实施例。
在另一示例中,假设第一交易队列,存储了与目标账户关联的交易请求。上述交易方法可以包括如下步骤:
(1)从第一交易队列中获取第一个交易请求:首先,从交易队列的队头获取第一个交易请求。队头即为队列中位于最前面的请求。
(2)确定交易类型对应的令牌获取时间:根据第一个交易请求的交易类型,可以确定该交易类型对应的令牌获取时间。每种交易类型可能会有不同的令牌获取时间,这取决于业务需求和系统配置。
(3)确定目标账户的令牌获取情况:根据目标账户的令牌桶中剩余令牌数和令牌生成速度,可以判断在令牌获取时间内是否至少存在一个令牌。如果存在至少一个令牌,则意味着目标账户的令牌桶中有足够的令牌可以被获取。
(4)获取目标账户的令牌:在目标账户的令牌桶中至少存在一个令牌的情况下,可以从目标账户的令牌桶中获取所需的令牌。
(5)基于获取到的目标账户的令牌,可以对第一个交易请求进行处理。处理过程可能涉及具体的业务逻辑、数据操作或其他操作,以完成该交易请求所需要的任务。
首先参见图3,本申请实施例提供的交易装置300,包括以下单元:
第一获取模块301,用于从第一交易队列中,获取第一交易请求,第一交易队列用于存储与目标账户关联的交易请求,第一交易请求为所第一交易队列中位于队头的交易请求;
第一确定模块302,用于基于第一交易请求的交易类型确定交易类型对应的令牌获取时间;
第二获取模块303,用于根据目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在令牌获取时间内目标账户的令牌桶中至少存在一个令牌的情况下,从目标账户的令牌桶中获取目标账户的令牌;
第一处理模块304,用于基于目标账户的令牌,对第一交易请求进行处理。
本申请提供的交易装置300,从第一交易队列中,获取第一交易请求;基于第一交易请求的交易类型确定交易类型对应的令牌获取时间;根据目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在令牌获取时间内目标账户的令牌桶中至少存在一个令牌的情况下,从目标账户的令牌桶中获取目标账户的令牌;基于目标账户的令牌,对第一交易请求进行处理。即,可以先将接收到的交易请求存储与第一交易队列,从队头取出先接收到的交易请求,根据该交易请求对应的令牌获取时间,从目标账户的令牌桶中获取令牌,进行交易处理。由此,不同类型的交易设置有不同的令牌获取时间,令牌获取时间越长的交易请求获得令牌的概率就越大,由此,可以通过设置令牌获取时间控制不同类型交易请求的优先级。在交易请求集中的情况下,实现优先处理优先级较高的类型的交易请求,从而实现高峰限流。
作为本申请的一种实现方式上述第二获取模块303,包括:
第一确定单元,用于在所述剩余令牌数小于等于零的情况下,根据所述令牌生成速度确定所述令牌桶生成新令牌的目标时间;
第二确定单元,用于在所述目标时间不超过所述令牌获取时间的情况下,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌;
第一获取单元,用于在目标账户的令牌桶中生成新的令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌。
作为本申请的一种实现方式上述交易装置300还可以包括:
存储模块,用于根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶为空的情况下,将所述第一交易请求存入第二交易队列,所述第二交易队列为与至少一个备用账户关联的队列。
作为本申请的一种实现方式上述交易装置300还可以包括:
提取模块,用于从所述第二交易队列中取出第二交易请求,所述第二交易请求为所述第二交易队列中权重最低的交易请求,所述第二交易请求的权重根据所述交易请求的交易类型确定;
第三获取模块,用于从至所述少一个备用账户的令牌桶中获取令牌;
第二处理模块,用于基于所述备用账户的令牌,对所述第二交易请求进行处理。
作为本申请的一种实现方式上述第三获取模块,具体用于:
从第一备用账户的令牌桶中获取令牌,所述第一备用账户为所述至少一个备用账户中第一优先级的账户;
在所述第一备用账户的令牌桶为空的情况下,从第二备用账户的令牌桶中获取第二备用账户的令牌,所述第二备用账户为所述至少一个备用账户中第二优先级的账户,所述第一优先级低于所述第二优先级。
作为本申请的一种实现方式上述第三获取模块,具体用于:
确定与所述第二交易请求的交易类型对应的第三备用账户,所述第三备用账户为所述至少一个备用账户中的账户;
从所述第三备用账户的令牌桶中获取令牌。
基于上述实施例提供的交易方法,相应地,本申请还提供了另一种交易装置的具体实现方式。请参见以下实施例。
图4示出了本申请实施例提供的交易设备的硬件结构示意图。
在交易设备可以包括处理器401以及存储有计算机程序指令的存储器402。
具体地,上述处理器401可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
存储器402可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器402可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器402可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器402可在综合网关容灾设备的内部或外部。在特定实施例中,存储器402是非易失性固态存储器。
存储器可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本公开的任意一个实施例的交易方法所描述的操作。
处理器401通过读取并执行存储器402中存储的计算机程序指令,以实现上述实施例中的任意一种交易方法。
在一个示例中,交易设备还可包括通信接口403和总线410。其中,如图4所示,处理器401、存储器402、通信接口403通过总线410连接并完成相互间的通信。
通信接口403,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。
总线410包括硬件、软件或两者,将在线数据流量计费设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线410可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
另外,结合上述实施例中的交易方法,本申请实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种交易方法。
需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程交易装置的处理器,以产生一种机器,使得经由计算机或其它可编程交易装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种交易方法,其特征在于,所述方法包括:
从第一交易队列中,获取第一交易请求,所述第一交易队列用于存储与目标账户关联的交易请求,所述第一交易请求为所第一交易队列中位于队头的交易请求;
基于所述第一交易请求的交易类型确定所述交易类型对应的令牌获取时间,不同交易类型对应不同的令牌获取时间;
根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌;
基于所述目标账户的令牌,对所述第一交易请求进行处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌,包括:
在所述剩余令牌数小于等于零的情况下,根据所述令牌生成速度确定所述令牌桶生成新令牌的目标时间;
在所述目标时间不超过所述令牌获取时间的情况下,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌;
在目标账户的令牌桶中生成新的令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一交易请求的交易类型确定所述交易类型对应的令牌获取时间之后,还包括:
根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶为空的情况下,将所述第一交易请求存入第二交易队列,所述第二交易队列为与至少一个备用账户关联的队列。
4.根据权利要求3所述的方法,其特征在于,所述将所述第一交易请求存入第二交易队列之后,包括:
从所述第二交易队列中取出第二交易请求,所述第二交易请求为所述第二交易队列中权重最低的交易请求,所述第二交易请求的权重根据所述交易请求的交易类型确定;
从至所述少一个备用账户的令牌桶中获取令牌;
基于所述备用账户的令牌,对所述第二交易请求进行处理。
5.根据权利要求4所述的方法,其特征在于,所述从至少一个备用账户的令牌桶中获取所述备用账户的令牌,包括:
从第一备用账户的令牌桶中获取令牌,所述第一备用账户为所述至少一个备用账户中第一优先级的账户;
在所述第一备用账户的令牌桶为空的情况下,从第二备用账户的令牌桶中获取第二备用账户的令牌,所述第二备用账户为所述至少一个备用账户中第二优先级的账户,所述第一优先级低于所述第二优先级。
6.根据权利要求4所述的方法,其特征在于,所述从至少一个备用账户的令牌桶中获取所述备用账户的令牌,包括:
确定与所述第二交易请求的交易类型对应的第三备用账户,所述第三备用账户为所述至少一个备用账户中的账户;
从所述第三备用账户的令牌桶中获取令牌。
7.一种交易装置,其特征在于,所述装置包括:
第一获取模块,用于从第一交易队列中,获取第一交易请求,所述第一交易队列用于存储与目标账户关联的交易请求,所述第一交易请求为所第一交易队列中位于队头的交易请求;
第一确定模块,用于基于所述第一交易请求的交易类型确定所述交易类型对应的令牌获取时间;
第二获取模块,用于根据所述目标账户的令牌桶中剩余令牌数和令牌生成速度,确定在所述令牌获取时间内所述目标账户的令牌桶中至少存在一个令牌的情况下,从所述目标账户的令牌桶中获取所述目标账户的令牌;
第一处理模块,用于基于所述目标账户的令牌,对所述第一交易请求进行处理。
8.一种交易设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;
所述处理器执行所述计算机程序指令时实现如权利要求1-6任意一项所述的交易方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-6任意一项所述的交易方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如权利要求1-6任意一项所述的交易方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311254792.0A CN117221237A (zh) | 2023-09-26 | 2023-09-26 | 交易方法、装置、设备、介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311254792.0A CN117221237A (zh) | 2023-09-26 | 2023-09-26 | 交易方法、装置、设备、介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117221237A true CN117221237A (zh) | 2023-12-12 |
Family
ID=89035194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311254792.0A Pending CN117221237A (zh) | 2023-09-26 | 2023-09-26 | 交易方法、装置、设备、介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117221237A (zh) |
-
2023
- 2023-09-26 CN CN202311254792.0A patent/CN117221237A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108711047B (zh) | 一种自动还款方法、系统及终端设备 | |
CN112132674A (zh) | 一种交易处理方法和装置 | |
CN108492109B (zh) | 电子装置、动态码请求的处理方法及存储介质 | |
CN110221914B (zh) | 文件处理方法及装置 | |
CN109862052A (zh) | 服务请求的调用方法、装置、计算机设备及存储介质 | |
CN112182374A (zh) | 库存控制方法、装置、电子设备和计算机可读介质 | |
CN117221237A (zh) | 交易方法、装置、设备、介质及程序产品 | |
CN112884181A (zh) | 额度信息处理方法和装置 | |
CN111105238A (zh) | 一种交易风险控制方法和装置 | |
CN116319810A (zh) | 分布式系统的流量控制方法、装置、设备、介质及产品 | |
CN115421933A (zh) | 一种银联代付交易智能处理的方法、装置及存储介质 | |
CN113285888A (zh) | 多业务系统多数据中心分流方法、装置、设备及介质 | |
CN112000462A (zh) | 一种基于共享外设资源的数据处理方法及装置 | |
CN111210288A (zh) | 基于税控服务器的发票批量开具作业优化调度方法及系统 | |
CN112308354A (zh) | 系统过负荷控制方法及装置 | |
CN113283907B (zh) | 一种订单请求的处理方法、相关装置及存储介质 | |
CN113645050B (zh) | 大额流量用户话单梯度合并方法、装置及计算设备 | |
CN114465974B (zh) | 推送消息的处理方法、装置、处理器及电子设备 | |
CN114598559B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN112087310B (zh) | 计费处理方法、装置及计算机可读存储介质 | |
CN114205764B (zh) | 话务资源共享方法、装置、设备和计算机可读存储介质 | |
CN117635331A (zh) | 一种交易处理方法、装置、设备及介质 | |
CN117172769A (zh) | 资源转移方法、装置、设备及存储介质 | |
CN118093724A (zh) | 一种数据处理方法、装置、设备及介质 | |
CN116939514A (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 |