CN110245153A - 产品数据处理方法、***、计算机设备和存储介质 - Google Patents
产品数据处理方法、***、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110245153A CN110245153A CN201910418420.4A CN201910418420A CN110245153A CN 110245153 A CN110245153 A CN 110245153A CN 201910418420 A CN201910418420 A CN 201910418420A CN 110245153 A CN110245153 A CN 110245153A
- Authority
- CN
- China
- Prior art keywords
- token
- product
- server
- amount
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及过程优化技术,提供了一种产品数据处理方法、***、计算机设备和存储介质。该方法包括:获取携带有申请方标识、申请数额和产品标识的产品申请请求;根据申请方标识对申请方进行校验,当校验通过后,将令牌获取请求发送至缓存服务器;当缓存服务器中存在与产品标识对应且处于空闲状态的令牌时,接收缓存服务器分配的令牌;将根据令牌和产品标识生成的额度查询请求发送至缓存服务器;接收缓存服务器反馈的产品额度,当产品额度大于或等于申请数额时,根据产品额度和申请数额计算产品剩余额度;将令牌释放指令发送至缓存服务器,以指示缓存服务器根据产品剩余额度更新内存中的产品额度,并释放令牌。采用本方法能够提高产品数据处理效率。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种产品数据处理方法、***、计算机设备和存储介质。
背景技术
随着计算机技术和互联网技术的不断发展,基于互联网的线上业务逐渐发展起来,给人们生活带来了诸多便捷。为了方便业务处理,逐渐出现了业务***,申请方可通过该业务***申请由提供方提供的产品或业务。
目前,业务***通常是基于低频产品申请场景设计的,未考虑高频产品申请(如抢购)等特殊场景的支持。在高频产品申请场景下,业务***根据接收到的多个产品申请请求串行的从数据库中获取产品额度,降低了产品申请请求的响应效率。尤其是在产品申请请求数量剧增时,可能会造成***因无法及时响应产品申请请求而宕机,从而进一步降低了产品申请请求的响应效率,存在产品数据处理效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高产品数据处理效率的产品数据处理方法、***、计算机设备和存储介质。
一种产品数据处理方法,应用于业务服务器集群中的业务服务器,所述方法包括:
获取携带有申请方标识、申请数额和产品标识的产品申请请求;
根据所述申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据所述产品标识生成的令牌获取请求发送至缓存服务器;
当所述缓存服务器中存在与所述产品标识对应、且处于空闲状态的令牌时,接收所述缓存服务器分配的所述令牌;
根据所述令牌和所述产品标识生成额度查询请求,将所述额度查询请求发送至所述缓存服务器;
接收所述缓存服务器反馈的产品额度,当所述产品额度大于或等于所述申请数额时,根据所述产品额度和所述申请数额计算产品剩余额度;
根据所述产品剩余额度和所述令牌生成令牌释放指令,将所述令牌释放指令发送至所述缓存服务器;所述令牌释放指令用于指示所述缓存服务器根据所述产品剩余额度更新内存中的所述产品额度,并释放所述令牌。
在其中一个实施例中,所述将根据所述产品标识生成的令牌获取请求发送至缓存服务器之后,所述方法还包括:
当所述缓存服务器中不存在与所述产品标识对应、且处于空闲状态的令牌时,则等待所述令牌的分配;
发送的所述令牌获取请求,用于指示所述缓存服务器按照所述令牌获取请求的接收时间,将所述令牌获取请求进行排序缓存,以等待所述令牌的分配;
当所述缓存服务器根据接收到的令牌释放指令释放所述令牌、且所述令牌获取请求的排序名次等于预设名次时,接收所述缓存服务器分配的所述令牌。
在其中一个实施例中,所述将所述令牌释放指令发送至所述缓存服务器之后,所述方法还包括:
将所述产品申请请求转发至处理服务器;转发的所述产品申请请求用于指示所述处理服务器进行产品申请处理;
当接收到所述处理服务器针对所述产品申请请求反馈的表示申请成功的申请结果时,根据所述产品标识和所述申请数额生成额度更新指令;
将所述额度更新指令发送至存储服务器;额度更新指令用于指示所述存储服务器根据所述申请数额更新数据库中与所述产品标识对应的产品额度。
在其中一个实施例中,所述缓存服务器为缓存服务器集群中的主服务器;所述方法还包括:
实时监听主从切换事件;所述主从切换事件是指将所述缓存服务器集群中的当前主服务器切换为从服务器,得到切换后的主服务器;
当监听到所述主从切换事件时,触发生成权限获取请求;
将所述权限获取请求发送至所述主服务器,当接收到所述主服务器分配的权限凭证时,从所述存储服务器的数据库中获取最新版本的产品额度;
将所述权限凭证和所述最新版本的产品额度发送至所述主服务器,以使得所述主服务器基于所述权限凭证将所述最新版本的产品额度存储在内存中。
一种产品数据处理方法,应用于缓存服务器,所述方法包括:
接收业务服务器发送的令牌获取请求,并根据所述令牌获取请求中的产品标识在内存中查询处于空闲状态的令牌;
当查询到所述令牌时,将所述令牌分配至所述业务服务器;
接收所述业务服务器发送的额度查询请求;所述额度查询请求中携带有所述令牌和所述产品标识;
基于所述令牌在内存中查询与所述产品标识对应的产品额度,并将查询的所述产品额度反馈至所述业务服务器;
接收所述业务服务器发送的令牌释放指令;所述令牌释放指令携带有所述令牌和所述产品标识对应的产品剩余额度;
根据所述产品剩余额度更新内存中的所述产品额度,并释放所述令牌。
在其中一个实施例中,所述方法还包括:
当没有查询到所述令牌时,按照所述令牌获取请求的接收时间将所述令牌获取请求进行排序缓存;
当根据接收到的令牌释放指令释放所述令牌时,按照所述令牌获取请求的排序,将所述令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
在其中一个实施例中,所述将所述令牌分配至所述业务服务器之后,所述方法还包括:
对所述令牌进行占用处理,并统计所述令牌的占用时长;
当所述占用时长大于或等于预设时长时,则释放所述令牌,并按照所述令牌获取请求的排序,将所述令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
一种产品数据处理***,所述***包括:业务服务器和缓存服务器;
所述业务服务器,用于获取携带有申请方标识、申请数额和产品标识的产品申请请求;根据所述申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据所述产品标识生成的令牌获取请求发送至所述缓存服务器;
所述缓存服务器,用于根据所述令牌获取请求中的所述产品标识在内存中查询处于空闲状态的令牌;当查询到所述令牌时,将所述令牌分配至所述业务服务器;
所述业务服务器,还用于根据所述令牌和所述产品标识生成额度查询请求,将所述额度查询请求发送至所述缓存服务器;
所述缓存服务器,还用于基于所述令牌在内存中查询与所述产品标识对应的产品额度,并将查询的所述产品额度反馈至所述业务服务器;
所述业务服务器,还用于当所述产品额度大于或等于所述申请数额时,根据所述产品额度和所述申请数额计算产品剩余额度;根据所述产品剩余额度和所述令牌生成令牌释放指令,将所述令牌释放指令发送至所述缓存服务器;
所述缓存服务器,还用于根据所述令牌释放指令中的所述产品剩余额度更新内存中的所述产品额度,并释放所述令牌。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述各个实施例中所述的产品数据处理方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述各个实施例中所述的产品数据处理方法的步骤。
上述产品数据处理方法、***、计算机设备和存储介质,业务服务器在获取到携带有申请方标识、申请数额和产品标识的产品申请请求时,根据申请方标识对申请方进行校验,当校验通过后根据产品标识从缓存服务器抢占处于空闲状态的令牌,以实现产品额度的串行抢占;当抢占到令牌后,业务服务器将根据该令牌和产品标识生成的额度查询请求发送至缓存服务器,缓存服务器基于该令牌在内存中查询产品标识对应的产品额度并反馈至业务服务器,以提高产品额度的操作效率;当产品额度大于或等于申请数额时,业务服务器根据产品额度和申请数额计算产品剩余额度,并将携带产品剩余额度和令牌的令牌释放指令发送至缓存服务器,缓存服务器根据产品剩余额度自动更新内存中的相应产品额度,并释放该令牌,以便于将该令牌自动分配至其他待响应的产品申请请求对应的业务服务器,以进一步提高产品额度的操作效率,能够提高产品申请请求的响应效率,从而能够提高产品数据处理效率。
附图说明
图1为一个实施例中产品数据处理方法的应用场景图;
图2为一个实施例中产品数据处理方法的流程示意图;
图3为另一个实施例中产品数据处理方法的流程示意图;
图4为又一个实施例中产品数据处理方法的流程示意图;
图5为再一个实施例中产品数据处理方法的流程示意图;
图6为一个实施例中产品数据处理***的架构图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的产品数据处理方法,可以应用于如图1所示的应用环境中。其中,业务服务器集群102中的业务服务器102a通过网络与缓存服务器104进行通信。业务服务器102a在获取到携带有申请方标识、申请数额要和产品标识的产品申请请求时,根据申请方标识对应的申请方信息对申请方进行校验,当校验通过后将携带产品标识的令牌获取请求发送至缓存服务器104,并在缓存服务器104中存在与产品标识对应、且处于空闲状态的令牌时,接收缓存服务器104分配的令牌,进而根据该令牌和产品标识从缓存服务器104中查询产品额度,当产品额度大于或等于申请数额时,根据产品额度和申请数额计算产品剩余额度,并将携带产品剩余额度和令牌的令牌释放指令发送至缓存服务器104,以使得缓存服务器104基于产品剩余额度更新内存中的相应产品额度,并释放该令牌。业务服务器102a和缓存服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。可以理解,业务服务器集群102可包括多个业务服务器,比如业务服务器102a、业务服务器102b和业务服务器102c等,各个业务服务器均通过网络与缓存服务器104进行通信。业务服务器集群102中的每个业务服务器均可能会获取到产品申请请求,并在获取到产品申请请求时,根据所获取到的产品申请请求执行上述业务服务器102a执行的相关操作。
在一个实施例中,如图2所示,提供了一种产品数据处理方法,以该方法应用于图1中的业务服务器102a为例进行说明,包括以下步骤:
S202,获取携带有申请方标识、申请数额和产品标识的产品申请请求。
其中,申请方标识用于唯一标识申请方,申请方可以是个人或集体,集体比如公司、部门或团体等。申请数额是指请求申请的产品数额,比如请求申请的产品数量或请求申请的产品所等价的资源量。产品标识用于唯一标识产品,产品可以是金融产品,比如债券,也可以是商品。以债券为例,申请数额是指请求申请的债券所等价的资源量。资源量是指资源的数量,资源具体可以是资金、虚拟红包或电子代金券等。
具体地,申请方终端在检测到申请方触发的预设申请触发操作时,获取申请方预选取或预录入的申请数额和产品标识,以及该申请方对应的申请方标识,根据申请方标识、申请数额和产品标识生成产品申请请求,并将该产品申请请求发送至业务服务器。
在一个实施例中,申请方终端将生成的产品申请请求发送至业务服务器集群中的一个业务服务器。
在一个实施例中,申请方终端将生成的产品申请请求发送至业务***中的负载均衡服务器,由负载均衡服务器将产品申请请求分配至相应的业务服务器。具体地,负载均衡服务器按照预配置的负载均衡策略参数,将产品申请请求分配至业务服务器集群中的一个业务服务器。负载均衡策略参数是负载均衡策略的量化参数,比如按照轮询的方式或者各业务服务器的当前负载,从业务服务器集群中选取用于接收产品申请请求的业务服务器。
S204,根据申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据产品标识生成的令牌获取请求发送至缓存服务器。
其中,申请方信息包括申请方账户信息和/或风险评估等级。申请方账户信息包括申请方账户的当前状态和可用资源量。申请方账户的当前状态包括正常状态和异常状态,比如申请方账户处于已销户、已录入黑名单或已冻结等状态,则判定当前状态为异常状态。风险评估等级可由风险评估***基于预先训练的风险评估模型进行预测并反馈。风险评估等级比如A、B、C或D(或者1、2、3或4),由前至后等级依次降低。申请方信息还可包括申请方基本信息或风险评估等级,以申请方为个人为例,申请方基本信息可包括申请方的职业、收入、年龄、性别、居住地或婚姻状况等。业务服务器也可基于申请方基本信息预测申请方的风险评估等级。
具体地,业务服务器解析接收到的产品申请请求,得到申请方标识、申请数额和产品标识。业务服务器根据申请方标识从本地或其他计算机设备获取申请方账户信息和/或风险评估等级,根据该申请方账户信息和/或风险评估等级对申请方进行校验。当申请方账户信息校验通过和/或风险评估等级校验通过,则判定申请方校验通过,业务服务器则根据产品标识生成令牌获取请求,并将该令牌获取请求发送至缓存服务器,以根据令牌获取请求从缓存服务器抢占与产品标识对应、且处于空闲状态的令牌。业务服务器根据申请方信息确定申请方账户的当前状态和可用资源量,将可用资源量与预设资源量进行比较。预设资源量可根据由产品申请请求指定的申请数额确定,比如等于申请数额。当申请方账户的当前状态为正常状态、且可用资源量大于预设资源量时,业务服务器则判定申请方信息校验通过。业务服务器查询与产品标识对应的产品风险评估等级,并将申请方的风险评估等级与该产品风险评估等级进行比较。当申请方的风险评估等级高于产品风险评估等级时,则判定风险评估等级校验通过。
在一个实施例中,业务服务器在获取到产品申请请求后,根据产品标识查询相应的产品状态,并当查询到的产品状态为可申请状态时,根据申请方标识对申请方进行校验。
在一个实施例中,业务服务器从本地或其他计算机设备查询产品标识对应的当前产品额度和产品状态,并将当前产品额度与申请数额进行比较。在当前产品额度大于或等于申请数额、且产品状态为可申请状态时,业务服务器继续执行对申请方进行校验的步骤。其中,产品状态包括可申请状态和不可申请状态,若当前时间处于产品的有效期或交易期,则判定产品状态为可申请状态。以产品为债券为例,债券的有效期是指发行债券时所指定的债券期限(时间段),交易期比如非节假日、非登记日和非派息日等。由此,业务服务器通过初步判断当前产品额度是否大于申请数额,来判定是否执行后续的产品额度抢占操作,能够提高产品申请请求的响应效率。
在一个实施例中,业务服务器集群中的各个业务服务器都可能会接收到申请方终端发送的产品申请请求。当接收到申请方终端发送的产品申请请求时,接收到产品申请请求的业务服务器根据该产品申请请求中的申请方标识查询相应的申请方信息,根据申请方信息对申请方进行校验,并当校验通过后触发生成携带有产品标识的令牌获取请求,以从缓存服务器中获取产品标识对应的、且处于空闲状态的令牌。由此,接收到产品申请请求的业务服务器均会执行上述抢占令牌的操作,而只有抢占到令牌的业务服务器才能根据抢占到的令牌从缓存服务器中获取产品标识所对应的产品额度。
S206,当缓存服务器中存在与产品标识对应、且处于空闲状态的令牌时,接收缓存服务器分配的令牌。
其中,令牌是访问缓存服务器以获取产品标识对应的产品额度的凭证,也就是访问令牌,可以是由数字、字母和符号等字符中的至少一种组成的字符串。
具体地,缓存服务器在接收到业务服务器发送的令牌获取请求时,解析该令牌获取请求得到产品标识,根据产品标识在本地查询处于空闲状态的令牌,并在查询到令牌时,将查询到的令牌分配至业务服务器。缓存服务器在本地针对各产品标识预配置有相应的令牌。缓存服务器可根据产品标识在本地查询预配置的令牌和该令牌对应的状态标识,当该状态标识为空闲标识时,将该令牌确定为根据产品标识查询到的且处于空闲状态的令牌,则将该令牌分配至相应的业务服务器,并将该令牌的状态标识更新为占用标识。
S208,根据令牌和产品标识生成额度查询请求,将额度查询请求发送至缓存服务器。
具体地,当接收到缓存服务器针对令牌获取请求分配的令牌时,表明该业务服务器抢占到获取产品标识对应的产品额度的权限,则根据该令牌和产品标识生成相应的额度查询请求,并将该额度查询请求发送至缓存服务器。缓存服务器解析接收到的额度查询请求得到产品标识和令牌,基于该令牌在内存中查询与产品标识对应的产品额度,并将查询到的产品额度反馈至业务服务器。
S210,接收缓存服务器反馈的产品额度,当产品额度大于或等于申请数额时,根据产品额度和申请数额计算产品剩余额度。
其中,产品额度是指产品所等价的资源量或产品的数量,具体可以是指待申请的产品所等价的资源量,也就是提供方提供或发行的产品所等价的资源量,比如债券额度(债券的面值总额);也可以是指待申请的产品数量,比如待售商品的数量。产品剩余额度是指在剔除由产品申请请求指定的申请数额后,剩余的可供申请的产品额度。
具体地,业务服务器接收缓存服务器针对额度查询请求反馈的产品额度,并将该产品额度与产品申请请求指定的申请数额进行比较。当产品额度大于或等于申请数额时,业务服务器从产品额度中减去申请数额得到相应的产品剩余额度。
在一个实施例中,当产品额度小于申请数额时,业务服务器根据抢占到的令牌生成令牌释放指令,将该令牌释放指令发送中缓存服务器,以指示缓存服务器释放该令牌。进一步地,业务服务器向申请方终端反馈表示产品申请失败和/或产品额度不足的提示信息。其中,令牌释放指令中还可包括产品标识。
S212,根据产品剩余额度和令牌生成令牌释放指令,将令牌释放指令发送至缓存服务器;令牌释放指令用于指示缓存服务器根据产品剩余额度更新内存中的产品额度,并释放令牌。
具体地,业务服务器根据计算的产品剩余额度和相应的令牌生成令牌释放指令,并将该令牌释放指令发送至缓存服务器。缓存服务器解析接收到的令牌释放指令得到产品剩余额度和待释放的令牌,根据产品剩余额度和/或令牌确定产品标识,在本地查询与产品标识对应的产品额度,并根据产品剩余额度更新查询到产品额度,也就是将查询到的产品额度更新为产品剩余额度。缓存服务器释放产品标识对应的令牌,还可将该令牌对应的状态标识更新为空闲标识。
进一步地,若缓存服务器本地缓存有待响应、且与该产品标识对应的令牌获取请求时,缓存服务器从待响应的令牌获取请求中选取接收时间最早的令牌获取请求,将释放的令牌分配至所选取的令牌获取请求所对应的业务服务器,并对该令牌进行占用处理,以使得分配到令牌的业务服务器根据该令牌执行上述相关操作。可以理解的是,缓存服务器本地缓存的令牌获取请求可以是由业务服务器依次获取并发送的,也可以是由业务服务器所在的业务服务器集群中的一个或多个业务服务器发送的。由此,可实现多个业务服务器串行的从缓存服务器中抢占产品标识对应的产品额度。上述产品数据处理方法,业务服务器在获取到携带有申请方标识、申请数额和产品标识的产品申请请求时,根据申请方标识对申请方进行校验,当校验通过后根据产品标识从缓存服务器抢占处于空闲状态的令牌,以实现产品额度的串行抢占;当抢占到令牌后,业务服务器将根据该令牌和产品标识生成的额度查询请求发送至缓存服务器,缓存服务器基于该令牌在内存中查询产品标识对应的产品额度并反馈至业务服务器,以提高产品额度的操作效率;当产品额度大于或等于申请数额时,业务服务器根据产品额度和申请数额计算产品剩余额度,并将携带产品剩余额度和令牌的令牌释放指令发送至缓存服务器,缓存服务器根据产品剩余额度自动更新内存中的相应产品额度,并释放该令牌,以便于将该令牌自动分配至其他待响应的产品申请请求对应的业务服务器,以进一步提高产品额度的操作效率,能够提高产品申请请求的响应效率,从而能够提高产品数据处理效率。
在一个实施例中,步骤S204之后,上述产品数据处理方法还包括:当缓存服务器中不存在与产品标识对应、且处于空闲状态的令牌时,则等待令牌的分配;发送的令牌获取请求,用于指示缓存服务器按照令牌获取请求的接收时间,将令牌获取请求进行排序缓存,以等待令牌的分配;当缓存服务器根据接收到的令牌释放指令释放令牌、且令牌获取请求的排序名次等于预设名次时,接收缓存服务器分配的令牌。
其中,接收时间是指缓存服务器接收业务服务器发送至的令牌获取请求的时间。排序名次是指令牌获取请求在缓存队列中的序号。预设名次是指预先设定的序号,比如1。
具体地,当根据接收到的令牌获取请求在本地没有查询到与产品标识对应且处于空闲状态的令牌时,缓存服务器按照令牌获取请求的接收时间将该令牌进行排序缓存。相应地,在接收到缓存服务器针对令牌获取请求分配的令牌之前,业务服务器等待令牌的分配,也就是进入令牌分配的等待状态。进一步地,缓存服务器在接收到持有令牌的业务服务器发送的令牌释放指令,并根据该令牌释放指令释放已占用的令牌时,按照排序缓存的令牌获取请求的排序,将释放的令牌分配至接收时间最早或排序名次最靠前的令牌获取请求所对应的业务服务器。可以理解的是,在令牌获取请求被缓存服务器排序缓存后,当缓存服务器根据接收到的令牌释放指令释放当前处于占用状态的令牌、且该缓存的令牌获取请求的排序名次等于预设名次时,缓存服务器将释放的令牌分配至该缓存的令牌获取请求所对应的业务服务器。
在一个实施例中,当没有查询到与令牌获取请求中的产品标识对应、且处于空闲状态的令牌时,缓存服务器将该令牌获取请求缓存至缓存队列。可以理解,当产品标识对应的令牌处于占用状态时,缓存服务器将一个或多个业务服务器针对该产品标识发送的令牌获取请求,按照令牌获取请求的接收时间将各令牌获取请求分别缓存至缓存队列。
上述实施例中,将没有抢占到令牌的令牌获取请求进行排序缓存,并将释放的令牌按照排序依次分配至相应令牌获取请求所对应的业务服务器,以提高令牌的串行抢占效率,从而提高产品额度的串行抢占效率。
在一个实施例中,将令牌释放指令发送至缓存服务器之后,上述产品数据处理方法还包括:将产品申请请求转发至处理服务器;转发的产品申请请求用于指示处理服务器进行产品申请处理;当接收到处理服务器针对产品申请请求反馈的表示申请成功的申请结果时,根据产品标识和申请数额生成额度更新指令;将额度更新指令发送至存储服务器;额度更新指令用于指示存储服务器根据申请数额更新数据库中与产品标识对应的产品额度。
具体地,当判定查询的产品额度大于或等于产品申请请求指定的申请数额时,业务服务器将该产品申请请求转发至处理服务器。处理服务器根据接收到的产品申请请求进行产品申请处理。以产品为债券为例,执行的产品申请处理比如将申请方账户中资源量等于申请数额的资源划拨至提供方账户,将提供方提供的产品或产品申请凭证反馈至申请方。当产品申请处理完毕时,处理服务器触发生成申请结果,并将该申请结果反馈至业务服务器。当接收的申请结果为申请成功时,业务服务器根据该产品申请请求指定的产品标识和申请数额生成额度更新指令,并将该额度更新指令发送至存储服务器。存储服务器根据额度更新指令在数据库中查询与产品标识对应的产品额度,将查询的产品额度减去申请数额得到产品剩余额度,并根据该产品剩余额度更新数据库中的产品额度。
在一个实施例中,当申请结果为申请失败时,业务服务器向申请方终端反馈表示申请失败的提示信息,并将根据产品标识生成的令牌获取请求发送至缓存服务器。当接收到缓存服务器针对该令牌获取请求分配的令牌时,业务服务器根据该令牌和产品标识从缓存服务器中获取该产品标识对应的产品额度,将该产品额度与产品申请请求指定的申请数额求和得到产品剩余额度,根据该产品剩余额度更新缓存服务器内存中的相应产品额度,并释放持有的令牌。由此,当申请失败时,根据申请失败的申请数额更新缓存服务器的内存中的产品额度。
在一个实施例中,存储服务器在接收到额度更新指令时,根据接收到的额度更新指令更新数据库中的相应产品额度。存储服务器可覆盖式的更新数据库中的产品额度,即将数据库中与产品标识对应的产品额度,更新为根据该产品额度和申请数额计算的产品剩余额度。存储服务器也可将计算的产品剩余额度与产品标识对应记录到数据库中,作为最新版本的产品额度。由此,数据库中记录有产品标识对应的各个版本的产品额度。可以理解,存储服务器可根据额度更新指令将申请数额和产品标识对应记录到数据库中,以形成持久化存储的产品申请记录。产品申请记录中还可包括申请方标识和申请时间等。
在一个实施例中,存储服务器将接收到的额度更新指令缓存在本地,按照预设周期从数据库中查询最新版本的、且与产品标识对应的产品额度,根据本地缓存的且与产品标识对应的各额度更新指令中的申请数额,以及查询的产品额度计算产品剩余额度,并根据该产品剩余额度更新数据库的产品额度。
在一个实施例中,上述由处理服务器根据产品申请请求执行的产品申请处理可由业务服务器执行。具体地,业务服务器在将令牌释放指令发送至缓存服务器之后,根据产品申请请求进行产品申请处理,并获取相应的申请结果。当申请结果为申请成功时,业务服务器根据相应的产品标识和申请数额生成额度更新指令,并将该额度更新指令发送至存储服务器。
上述实施例中,根据申请成功的申请数额更新数据库中的产品额度,以将产品额度持久化更新到数据库中,能够避免因缓存服务器故障而导致内存中的产品额度丢失的问题。
在一个实施例中,缓存服务器为缓存服务器集群中的主服务器;上述产品数据处理方法还包括:实时监听主从切换事件;主从切换事件是指将缓存服务器集群中的当前主服务器切换为从服务器,得到切换后的主服务器;当监听到主从切换事件时,触发生成权限获取请求;将权限获取请求发送至主服务器,当接收到主服务器分配的权限凭证时,从存储服务器的数据库中获取最新版本的产品额度;将权限凭证和最新版本的产品额度发送至主服务器,以使得主服务器基于权限凭证将最新版本的产品额度存储在内存中。
其中,缓存服务器集群包括一个主服务器和至少一个从服务器。主从切换事件是指在缓存服务器集群中的当前主服务器宕机时,自动触发的将该当前主服务器切换为从服务器,得到切换后的主服务器。可以理解,主从切换事件是从缓存服务器集群中的从服务器中选取目标从服务器,并将该目标从服务器替代当前主服务器作为切换后的主服务器。主服务器具备读写权限,从服务器仅具备可读权限,主服务器将更新的产品额度同步至从服务器。权限凭证是用于表征具备恢复缓存服务器内存数据的权限的凭证,具体可以是令牌。
具体地,上述各个实施例中的缓存服务器为缓存服务器集群中的主服务器业务服务器实时监听缓存服务器集群中主服务器的运行状态,当监听到因主服务器宕机而触发的主从切换事件时,触发生成权限获取请求,并将该权限获取请求发送至切换后的主服务器。切换后的主服务器从接收到的权限获取请求中选取接收时间最早的权限获取请求,并将预配置的权限凭证分配至选取的权限获取请求所对应的业务服务器。当接收到分配至的权限凭证时,接收到该权限凭证的业务服务器从存储服务器的数据库中,分别获取各产品标识对应的最新版本的产品额度,并将该权限凭证和各最新版本的产品额度发送至切换后的主服务器。切换后的主服务器对接收到的权限凭证进行校验,当校验通过后将各最新版本的产品额度存储在内存中,以恢复主服务器内存中的产品额度。进一步地,主服务器将内存中各产品标识对应的产品额度同步至各从服务器。
在一个实施例中,业务服务器集群中的各个业务服务器均实时监听缓存服务器集群的主从切换事件,并在监听到主从切换事件后向切换后的主服务器发送权限获取请求,以抢占权限凭证。
上述实施例中,当内存中的产品额度因缓存服务器宕机而丢失时,根据存储服务器数据库中的产品额度自动更新切换后的缓存服务器中的产品额度,以便于再接收到产品申请请求时能快速从内存中获取产品额度,从而提高产品数据处理效率。通过抢占权限凭证来恢复内存数据,以保证内存数据的正确性。
在一个实施例中,业务服务器接收申请方终端发送的与申请方标识对应的业务申请请求,根据业务申请请求确定业务类型和申请方类型。当业务类型为差异化业务类型时,业务服务器根据申请方类型查询预配置的差异化业务处理流程,并按照差异化业务处理流程根据业务申请请求进行业务处理。当业务类型为通用业务类型时,业务服务器查询预配置的通用业务处理流程,并按照该通用业务处理流程根据业务申请请求进行业务处理。以产品为债券为例,差异化业务类型比如询价、预约和转托管等,通用业务类型比如产品申请,申请方类型包括个人、对公和同业客户等。由此,能够支持多种类型的申请方,且针对不同类型的申请方可提供相应的业务处理流程,提高了业务处理效率。
在一个实施例中,业务服务器接收报价服务器推送的与产品标识对应的产品报价,根据产品标识确定应用服务器列表,并通过socket长连接将该产品报价广播至应用服务器列表中的各应用服务器。其中,应用服务器列表是由已在通讯网络中注册、且订阅了该产品标识对应的产品报价的一个或多个应用服务器组成的集合,应用服务器可包括业务服务器、缓存服务器和存储服务器,以及业务***中的其他服务器,比如查询服务器。报价服务器可借助于已训练的报价模型预测产品报价,也可根据历史成交资源交换量确定产品报价。可以理解,报价服务器向业务服务器集群中的任一业务服务器推送产品报价,由该业务服务器将产品报价广播至其他应用服务器。以产品为债券为例,报价服务器可根据中债估值数据、债券一级交易市场的成交价格和历史成交价格计算相应的债券报价。由此,能够向申请方和提供方提供实时且高频的双向产品报价,以提高用户体验度,从而能够提高产品申请成交量。
在一个实施例中,当业务服务器接收到管理终端发送的修改数据时,接收到修改数据的业务服务器查询相应的应用服务器列表,将该修改数据广播至应用服务器列表中的各应用服务器。由此,各应用服务器能够快速共享最新数据。
在一个实施例中,如图3所示,提供了一种产品数据处理方法,该方法具体包括以下步骤:
S302,获取携带有申请方标识、申请数额和产品标识的产品申请请求。
S304,根据申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据产品标识生成的令牌获取请求发送至缓存服务器。
S306,当缓存服务器中不存在与产品标识对应、且处于空闲状态的令牌时,则等待令牌的分配;发送的令牌获取请求,用于指示缓存服务器按照令牌获取请求的接收时间,将令牌获取请求进行排序缓存,以等待令牌的分配。
S308,当缓存服务器根据接收到的令牌释放指令释放令牌、且令牌获取请求的排序名次等于预设名次时,接收缓存服务器分配的令牌,并跳转至步骤S312继续执行。
S310,当缓存服务器中存在与产品标识对应、且处于空闲状态的令牌时,接收缓存服务器分配的令牌。
S312,根据令牌和产品标识生成额度查询请求,将额度查询请求发送至缓存服务器。
S314,接收缓存服务器反馈的产品额度,当产品额度大于或等于申请数额时,根据产品额度和申请数额计算产品剩余额度。
S316,根据产品剩余额度和令牌生成令牌释放指令,将令牌释放指令发送至缓存服务器;令牌释放指令用于指示缓存服务器根据产品剩余额度更新内存中的产品额度,并释放令牌。
上述实施例中,业务服务器集群中的各业务服务器在接收到产品申请请求时,对申请方进行校验,以保证产品申请的有效性和资源的安全性,当校验通过时将携带产品标识的令牌获取请求发送至缓存服务器,以从缓存服务器中抢占该产品标识对应的令牌,抢占到令牌的业务服务器则基于令牌查询并更新缓存服务器的内存中的产品额度,未抢占到令牌的业务服务器则等待令牌的分配。能够提高令牌和产品额度的串行抢占效率,从而能够提高产品数据处理效率。
如图4所示,在一个实施例中,提供了一种产品数据处理方法,以该方法应用于图1中的缓存服务器104为例进行说明,具体包括以下步骤:
402,接收业务服务器发送的令牌获取请求,并根据令牌获取请求中的产品标识在内存中查询处于空闲状态的令牌。
具体地,缓存服务器接收业务服务器发送的令牌获取请求,解析令牌获取请求得到产品标识,根据产品标识在内存中查询与该产品标识对应且处于空闲状态的令牌。
404,当查询到令牌时,将令牌分配至业务服务器。
具体地,当查询到与产品标识对应且处于空闲状态的令牌时,缓存服务器将查询到的令牌分配至相应的业务服务器。
在一个实施例中,上述产品数据处理方法还包括:当没有查询到令牌时,按照令牌获取请求的接收时间将令牌获取请求进行排序缓存;当根据接收到的令牌释放指令释放所述令牌时,按照令牌获取请求的排序,将令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
具体地,当没有查询到与令牌获取请求中的产品标识对应且处于空闲状态的令牌时,缓存服务器将该令牌获取请求按照令牌获取请求的接收时间进行排序缓存,以等待令牌的分配。当接收到持有令牌的业务服务器发送的与产品标识对应的令牌释放指令、且根据该令牌释放指令释放该产品标识对应的令牌时,缓存服务器按照排序缓存的各令牌获取请求的排序,将释放的令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。可以理解,当接收到释放的令牌时,缓存服务器从排序缓存的令牌获取请求中选取接收时间最早的令牌获取请求,并将令牌分配至选取的令牌获取请求所对应的业务服务器。
在一个实施例中,当根据令牌获取请求没有查询到处于空闲状态的令牌时,缓存服务器将该令牌获取请求按照接收时间缓存至缓存队列。
在一个实施例中,缓存服务器接收业务服务器集群中的一个或多个业务服务器发送的令牌获取请求,并针对各令牌获取请求执行上述令牌分配操作。
406,接收业务服务器发送的额度查询请求;额度查询请求中携带有令牌和产品标识。
具体地,缓存服务器接收业务服务器发送的额度查询请求,解析额度查询请求得到令牌和产品标识,按照预设校验方式根据产品标识对令牌进行校验。预设校验方式比如根据产品标识查询预配置的目标令牌,并将解析得到的令牌与目标令牌进行比较。当二者一致时,则判定令牌校验通过。
408,基于令牌在内存中查询与产品标识对应的产品额度,并将查询的产品额度反馈至业务服务器。
具体地,当令牌校验通过时,缓存服务器根据产品标识在内存中查询与该产品标识对应的产品额度,并将查询到的产品额度反馈至相应的业务服务器。
410,接收业务服务器发送的令牌释放指令;令牌释放指令携带有令牌和产品标识对应的产品剩余额度。
具体地,缓存服务器接收由持有令牌的业务服务器生成并发送的令牌释放指令,解析令牌释放指令得到待释放的令牌,以及根据产品标识对应的产品额度和申请数额计算得到的产品剩余额度。
412,根据产品剩余额度更新内存中的产品额度,并释放令牌。
具体地,缓存服务器根据解析得到的产品剩余额度和/或令牌在内存中查询相应的产品额度,根据该产品剩余额度在内存中更新查询到的产品额度,并释放该令牌。在一个实施例中,令牌释放指令中还携带有产品标识。缓存服务器根据解析得到的产品标识在内存中查询产品额度,并根据产品剩余额度更新查询到的产品额度。
在一个实施例中,将令牌分配至业务服务器之后,上述产品数据处理方法还包括:对令牌进行占用处理,并统计令牌的占用时长;当占用时长大于或等于预设时长时,则释放令牌,并按照令牌获取请求的排序,将令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
其中,占用时长是指令牌处于占用状态的时间长度,也就是指自将令牌分配至业务服务器时起该业务服务器持有该令牌的时间长度。预设时长是预先设定的时间长度,具体可自定义,比如10秒,也可根据该令牌对应的多个历史占用时长计算得到,比如对该多个历史占用时长求平均得到预设时长。
具体地,缓存服务器在将查询到的令牌分配至业务服务器时,获取当前***时间作为分配时间,并在将该令牌分配至该业务服务器后,对该令牌进行占用处理,也就是将该令牌的状态标注为占用状态或将该令牌的状态标识更新为占用标识。在接收到该业务服务器释放的该令牌之前,缓存服务器以分配时间为起始时间统计该令牌的占用时长,并将统计的占用时长与预设时长进行比较。当占用时长大于或等于预设时长时,缓存服务器则判定持有该令牌的业务服务器宕机,自动释放该令牌,也就是将该令牌的状态标注为空闲状态或将该令牌的状态标识更新为空闲标识,并按照排序缓存的各令牌获取请求的排序,将释放的令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
上述实施例中,当将令牌分配至业务服务器后达到预设时长未接收到该业务服务器释放的该令牌,则判定该业务服务器宕机,则自动释放该令牌,能够避免因排序缓存的令牌获取请求过多而造成长时间等待,从而导致缓存服务器因资源耗尽而宕机,能够保证令牌获取请求的响应效率,从而能够保证产品数据的处理效率。
如图5所示,在一个实施例中,提供了一种产品数据处理方法,该方法具体包括以下步骤:
S502,业务服务器获取携带有申请方标识、申请数额和产品标识的产品申请请求。
S504,业务服务器根据申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据产品标识生成的令牌获取请求发送至缓存服务器。
S506,缓存服务器根据令牌获取请求中的产品标识在内存中查询处于空闲状态的令牌。
S508,当查询到令牌时,缓存服务器将令牌分配至业务服务器。
S510,业务服务器根据令牌和产品标识生成额度查询请求,将额度查询请求发送至缓存服务器。
S512,缓存服务器基于令牌在内存中查询与产品标识对应的产品额度,并将查询的产品额度反馈至业务服务器。
S514,当产品额度大于或等于申请数额时,业务服务器根据产品额度和申请数额计算产品剩余额度。
S516,业务服务器根据产品剩余额度和令牌生成令牌释放指令,将令牌释放指令发送至缓存服务器。
S518,缓存服务器根据产品剩余额度更新内存中的产品额度,并释放令牌。
应该理解的是,虽然图2-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图1所示,提供了一种产品数据处理***,该***包括:业务服务器集群102和缓存服务器104;其中,业务服务器集群102包括业务服务器102a;
业务服务器102a,用于获取携带有申请方标识、申请数额和产品标识的产品申请请求;根据申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据产品标识生成的令牌获取请求发送至缓存服务器104;
缓存服务器104,用于根据令牌获取请求中的产品标识在内存中查询处于空闲状态的令牌;当查询到令牌时,将令牌分配至业务服务器102a;
业务服务器102a,还用于根据令牌和产品标识生成额度查询请求,将额度查询请求发送至缓存服务器104;
缓存服务器104,还用于基于令牌在内存中查询与产品标识对应的产品额度,并将查询的产品额度反馈至业务服务器102a;
业务服务器102a,还用于当产品额度大于或等于申请数额时,根据产品额度和申请数额计算产品剩余额度;根据产品剩余额度和令牌生成令牌释放指令,将令牌释放指令发送至缓存服务器104;
缓存服务器104,还用于根据令牌释放指令中的产品剩余额度更新内存中的产品额度,并释放令牌。
在一个实施例中,业务服务器102a,还用于当缓存服务器中不存在与产品标识对应、且处于空闲状态的令牌时,则等待令牌的分配;缓存服务器104,还用于按照令牌获取请求的接收时间,将令牌获取请求进行排序缓存,以等待令牌的分配;当根据接收到的令牌释放指令释放令牌时,按照令牌获取请求的排序,将令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器;业务服务器102a,还用于当缓存服务器104根据接收到的令牌释放指令释放令牌、且令牌获取请求的排序名次等于预设名次时,接收缓存服务器104分配的令牌。
如图6所示,在一个实施例中,上述产品数据处理***还包括:处理服务器106和存储服务器108;
业务服务器102a,还用于将产品申请请求转发至处理服务器106;
处理服务器106,用于进行产品申请处理;
业务服务器102a,还用于当接收到处理服务器106针对产品申请请求反馈的表示申请成功的申请结果时,根据产品标识和申请数额生成额度更新指令;将额度更新指令发送至存储服务器108;
存储服务器108,用于根据申请数额更新数据库中与产品标识对应的产品额度。
在一个实施例中,缓存服务器104为缓存服务器集群中的主服务器;业务服务器102a,还用于实时监听主从切换事件;主从切换事件是指将缓存服务器集群中的当前主服务器切换为从服务器,得到切换后的主服务器;当监听到主从切换事件时,触发生成权限获取请求;将权限获取请求发送至主服务器,当接收到主服务器分配的权限凭证时,从存储服务器的数据库中获取最新版本的产品额度;将权限凭证和最新版本的产品额度发送至主服务器,以使得主服务器基于权限凭证将最新版本的产品额度存储在内存中。可以理解,在缓存服务器集群触发主从切换事件后,将切换后的主服务器作为缓存服务器104,以执行上述一个或多个实施例中由缓存服务器104执行的操作,比如根据令牌获取请求分配令牌,根据额度查询请求在内存中查询产品额度,以及根据令牌释放指令更新内存中的产品额度并释放令牌。
在一个实施例中,缓存服务器104,还用于对令牌进行占用处理,并统计令牌的占用时长;当占用时长大于或等于预设时长时,则释放令牌,并按照令牌获取请求的排序,将令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
在一个实施例中,业务服务器集群中的各业务服务器用于在获取到用户触发的产品申请请求时,根据产品申请请求对申请方进行校验,在校验通过后从缓存服务器抢占与产品标识对应、且处于空闲状态的令牌,并根据抢占到的令牌从缓存服务器抢占产品额度,以根据抢占到的产品额度和产品申请请求中的申请数额,确定是否针对该产品申请请求进行相应的产品申请处理,以及是否根据抢占到的产品额度和申请数额更新缓存服务器中的产品额度。缓存服务器用于在内存中存储各产品标识对应的令牌和产品额度,还用于根据各业务服务器发送的令牌获取请求,将与产品标识对应且处于空闲状态的令牌分配至接收时间最早的令牌获取请求所对应的业务服务器,还用于根据额度查询请求将产品额度反馈至当前抢占到令牌的业务服务器。
进一步地,处理服务器用于在业务服务器判定产品额度大于或等于申请数额时,接收业务服务器发送的产品申请请求,并根据产品申请请求进行产品申请处理。可以理解,处理服务器是类似于交易所的中心服务器。存储服务器用于在产品申请请求对应的申请结果为申请成功时,将申请成功的申请数额持久化存储到数据库中,并根据申请数额在数据库中更新相应的产品额度。可以理解,缓存服务器将产品额度存储在内存中,以便于根据额度查询请求能够快速查询并反馈相应的产品额度。在缓存服务器因故障或宕机而导致内存中的产品额度丢失时,可根据存储服务器存储在数据库中的产品额度恢复缓存服务器内存中的产品额度,以保证产品额度的安全性和可靠性。
关于产品数据处理***的具体限定可以参见上文中对于产品数据处理方法的限定,在此不再赘述。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是业务服务器或缓存服务器,其内部结构图可以如图7所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储申请方信息,或者,产品标识所对应的令牌和产品额度。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种产品数据处理方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述各个实施例中的产品数据处理方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个实施例中的产品数据处理方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种产品数据处理方法,应用于业务服务器集群中的业务服务器,所述方法包括:
获取携带有申请方标识、申请数额和产品标识的产品申请请求;
根据所述申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据所述产品标识生成的令牌获取请求发送至缓存服务器;
当所述缓存服务器中存在与所述产品标识对应、且处于空闲状态的令牌时,接收所述缓存服务器分配的所述令牌;
根据所述令牌和所述产品标识生成额度查询请求,将所述额度查询请求发送至所述缓存服务器;
接收所述缓存服务器反馈的产品额度,当所述产品额度大于或等于所述申请数额时,根据所述产品额度和所述申请数额计算产品剩余额度;
根据所述产品剩余额度和所述令牌生成令牌释放指令,将所述令牌释放指令发送至所述缓存服务器;所述令牌释放指令用于指示所述缓存服务器根据所述产品剩余额度更新内存中的所述产品额度,并释放所述令牌。
2.根据权利要求1所述的方法,其特征在于,所述将根据所述产品标识生成的令牌获取请求发送至缓存服务器之后,所述方法还包括:
当所述缓存服务器中不存在与所述产品标识对应、且处于空闲状态的令牌时,则等待所述令牌的分配;
发送的所述令牌获取请求,用于指示所述缓存服务器按照所述令牌获取请求的接收时间,将所述令牌获取请求进行排序缓存,以等待所述令牌的分配;
当所述缓存服务器根据接收到的令牌释放指令释放所述令牌、且所述令牌获取请求的排序名次等于预设名次时,接收所述缓存服务器分配的所述令牌。
3.根据权利要求1所述的方法,其特征在于,所述将所述令牌释放指令发送至所述缓存服务器之后,所述方法还包括:
将所述产品申请请求转发至处理服务器;转发的所述产品申请请求用于指示所述处理服务器进行产品申请处理;
当接收到所述处理服务器针对所述产品申请请求反馈的表示申请成功的申请结果时,根据所述产品标识和所述申请数额生成额度更新指令;
将所述额度更新指令发送至存储服务器;额度更新指令用于指示所述存储服务器根据所述申请数额更新数据库中与所述产品标识对应的产品额度。
4.根据权利要求3所述的方法,其特征在于,所述缓存服务器为缓存服务器集群中的主服务器;所述方法还包括:
实时监听主从切换事件;所述主从切换事件是指将所述缓存服务器集群中的当前主服务器切换为从服务器,得到切换后的主服务器;
当监听到所述主从切换事件时,触发生成权限获取请求;
将所述权限获取请求发送至所述主服务器,当接收到所述主服务器分配的权限凭证时,从所述存储服务器的数据库中获取最新版本的产品额度;
将所述权限凭证和所述最新版本的产品额度发送至所述主服务器,以使得所述主服务器基于所述权限凭证将所述最新版本的产品额度存储在内存中。
5.一种产品数据处理方法,应用于缓存服务器,所述方法包括:
接收业务服务器发送的令牌获取请求,并根据所述令牌获取请求中的产品标识在内存中查询处于空闲状态的令牌;
当查询到所述令牌时,将所述令牌分配至所述业务服务器;
接收所述业务服务器发送的额度查询请求;所述额度查询请求中携带有所述令牌和所述产品标识;
基于所述令牌在内存中查询与所述产品标识对应的产品额度,并将查询的所述产品额度反馈至所述业务服务器;
接收所述业务服务器发送的令牌释放指令;所述令牌释放指令携带有所述令牌和所述产品标识对应的产品剩余额度;
根据所述产品剩余额度更新内存中的所述产品额度,并释放所述令牌。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当没有查询到所述令牌时,按照所述令牌获取请求的接收时间将所述令牌获取请求进行排序缓存;
当根据接收到的令牌释放指令释放所述令牌时,按照所述令牌获取请求的排序,将所述令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
7.根据权利要求6所述的方法,其特征在于,所述将所述令牌分配至所述业务服务器之后,所述方法还包括:
对所述令牌进行占用处理,并统计所述令牌的占用时长;
当所述占用时长大于或等于预设时长时,则释放所述令牌,并按照所述令牌获取请求的排序,将所述令牌分配至排序名次等于预设名次的令牌获取请求所对应的业务服务器。
8.一种产品数据处理***,其特征在于,所述***包括:业务服务器和缓存服务器;
所述业务服务器,用于获取携带有申请方标识、申请数额和产品标识的产品申请请求;根据所述申请方标识对应的申请方信息对申请方进行校验,当校验通过后,将根据所述产品标识生成的令牌获取请求发送至所述缓存服务器;
所述缓存服务器,用于根据所述令牌获取请求中的所述产品标识在内存中查询处于空闲状态的令牌;当查询到所述令牌时,将所述令牌分配至所述业务服务器;
所述业务服务器,还用于根据所述令牌和所述产品标识生成额度查询请求,将所述额度查询请求发送至所述缓存服务器;
所述缓存服务器,还用于基于所述令牌在内存中查询与所述产品标识对应的产品额度,并将查询的所述产品额度反馈至所述业务服务器;
所述业务服务器,还用于当所述产品额度大于或等于所述申请数额时,根据所述产品额度和所述申请数额计算产品剩余额度;根据所述产品剩余额度和所述令牌生成令牌释放指令,将所述令牌释放指令发送至所述缓存服务器;
所述缓存服务器,还用于根据所述令牌释放指令中的所述产品剩余额度更新内存中的所述产品额度,并释放所述令牌。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910418420.4A CN110245153A (zh) | 2019-05-20 | 2019-05-20 | 产品数据处理方法、***、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910418420.4A CN110245153A (zh) | 2019-05-20 | 2019-05-20 | 产品数据处理方法、***、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110245153A true CN110245153A (zh) | 2019-09-17 |
Family
ID=67884454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910418420.4A Pending CN110245153A (zh) | 2019-05-20 | 2019-05-20 | 产品数据处理方法、***、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110245153A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110852776A (zh) * | 2019-09-24 | 2020-02-28 | 京东数字科技控股有限公司 | 任务的处理方法和装置、存储介质、电子装置 |
CN111083058A (zh) * | 2019-12-04 | 2020-04-28 | 百度在线网络技术(北京)有限公司 | 内容分发网络服务限流方法及电子设备 |
CN111159233A (zh) * | 2019-12-18 | 2020-05-15 | 金蝶软件(中国)有限公司 | 分布式缓存方法、***、计算机设备以及存储介质 |
CN115442432A (zh) * | 2022-09-06 | 2022-12-06 | 上海浦东发展银行股份有限公司 | 一种控制方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411567A (zh) * | 2016-08-30 | 2017-02-15 | 福建星网视易信息***有限公司 | 一种服务器自动控制可负载客户端数量的方法及装置 |
US20170357502A1 (en) * | 2016-06-10 | 2017-12-14 | OneTrust, LLC | Data processing systems and communications systems and methods for integrating privacy compliance systems with software development and agile tools for privacy design |
CN108769041A (zh) * | 2018-06-06 | 2018-11-06 | 深圳壹账通智能科技有限公司 | 登录方法、***、计算机设备和存储介质 |
CN108897615A (zh) * | 2018-05-31 | 2018-11-27 | 康键信息技术(深圳)有限公司 | 秒杀请求处理方法、应用服务器集群及存储介质 |
CN109492019A (zh) * | 2018-10-16 | 2019-03-19 | 平安科技(深圳)有限公司 | 业务请求响应方法、装置、计算机设备和存储介质 |
-
2019
- 2019-05-20 CN CN201910418420.4A patent/CN110245153A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170357502A1 (en) * | 2016-06-10 | 2017-12-14 | OneTrust, LLC | Data processing systems and communications systems and methods for integrating privacy compliance systems with software development and agile tools for privacy design |
CN106411567A (zh) * | 2016-08-30 | 2017-02-15 | 福建星网视易信息***有限公司 | 一种服务器自动控制可负载客户端数量的方法及装置 |
CN108897615A (zh) * | 2018-05-31 | 2018-11-27 | 康键信息技术(深圳)有限公司 | 秒杀请求处理方法、应用服务器集群及存储介质 |
CN108769041A (zh) * | 2018-06-06 | 2018-11-06 | 深圳壹账通智能科技有限公司 | 登录方法、***、计算机设备和存储介质 |
CN109492019A (zh) * | 2018-10-16 | 2019-03-19 | 平安科技(深圳)有限公司 | 业务请求响应方法、装置、计算机设备和存储介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110852776A (zh) * | 2019-09-24 | 2020-02-28 | 京东数字科技控股有限公司 | 任务的处理方法和装置、存储介质、电子装置 |
CN111083058A (zh) * | 2019-12-04 | 2020-04-28 | 百度在线网络技术(北京)有限公司 | 内容分发网络服务限流方法及电子设备 |
CN111083058B (zh) * | 2019-12-04 | 2024-03-01 | 百度在线网络技术(北京)有限公司 | 内容分发网络服务限流方法及电子设备 |
CN111159233A (zh) * | 2019-12-18 | 2020-05-15 | 金蝶软件(中国)有限公司 | 分布式缓存方法、***、计算机设备以及存储介质 |
CN111159233B (zh) * | 2019-12-18 | 2024-03-08 | 金蝶软件(中国)有限公司 | 分布式缓存方法、***、计算机设备以及存储介质 |
CN115442432A (zh) * | 2022-09-06 | 2022-12-06 | 上海浦东发展银行股份有限公司 | 一种控制方法、装置、设备及存储介质 |
CN115442432B (zh) * | 2022-09-06 | 2024-06-07 | 上海浦东发展银行股份有限公司 | 一种控制方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245153A (zh) | 产品数据处理方法、***、计算机设备和存储介质 | |
CN108764868B (zh) | 区块链节点代理对账方法和区块对账代理节点 | |
CN109614209B (zh) | 一种任务处理方法、应用服务器及*** | |
US8433809B2 (en) | Method and system for providing a session involving a plurality of software applications | |
CN110708258B (zh) | 流量控制方法、装置、服务器及存储介质 | |
CN107045676B (zh) | 物流流转消息处理方法及装置 | |
CN105096122A (zh) | 一种分片式交易匹配方法和装置 | |
CN109636165B (zh) | 一种去中心化的在线客服排队调度方法 | |
CN109981702A (zh) | 一种文件存储方法及*** | |
CN110909978A (zh) | 资源处理方法、装置、服务器及计算机可读存储介质 | |
CN105978744B (zh) | 一种资源分配方法、装置及*** | |
CN109242665B (zh) | 业务规则多渠道共享方法、装置、设备和存储介质 | |
CN107395406A (zh) | 在线***的在线状态数据处理方法、装置及*** | |
CN112669160B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN114186925A (zh) | 库存价值计算方法、装置、计算机设备和存储介质 | |
CN114490051A (zh) | 一种云资源分配方法和电子设备 | |
CN114244905A (zh) | 数据转发方法、装置、计算机设备和存储介质 | |
CN112381481A (zh) | 产品可售库存管理方法、装置、计算机设备和存储介质 | |
CN110264290B (zh) | 获取推荐信息的方法、装置及电子设备 | |
CN110163731A (zh) | 中介服务超市的虚拟竞价室的建立方法、***及存储介质 | |
CN112396266A (zh) | 订单配送方法、装置、服务器以及存储介质 | |
CN117893116B (zh) | 数据处理方法、装置和*** | |
CN111144760B (zh) | 一种工单审核平台以及审核派单方法、装置和派发服务器 | |
CN114862273A (zh) | 配送对象背单信息的更新方法、装置及计算设备 | |
CN117194050A (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 |