一种业务请求数据的处理方法、装置及系统与流程

文档序号:17375283发布日期:2019-04-12 23:14阅读:235来源:国知局
一种业务请求数据的处理方法、装置及系统与流程

本说明书属于计算机技术领域,尤其涉及一种业务请求数据的处理方法、装置及系统。



背景技术:

在日常的系统运营过程中,往往会需要应对大流量请求的问题,特别是互联网企业,大流量的业务请求数据的处理更是必备的能力。在业务请求量比较大,系统的处理能力有限时,如何合理的进行业务请求数据的处理是一项比较关键的技术。



技术实现要素:

本说明书目的在于提供一种业务请求数据的处理方法、装置及系统,实现了业务请求数据的灵活处理,提高了业务请求数据的处理效率。

一方面本说明书实施例提供了一种业务请求数据的处理方法,包括:

接收业务请求数据;

获取所述业务请求数据对应的配置参数,所述配置参数包括:直接转发、自动转发、蓄洪处理;

根据所述配置参数,将所述业务请求数据进行转发或蓄洪。

进一步地,所述方法的另一个实施例中,所述根据所述配置参数,将所述业务请求数据进行转发或蓄洪,包括:

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足蓄洪阈值,则将所述业务请求数据保存至蓄洪队列;

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足泄洪阈值,则将所述业务请求数据进行转发。

进一步地,所述方法的另一个实施例中,所述方法还包括:

根据业务请求数据的流量和/或下游系统的响应时间,动态调整所述蓄洪阈值、所述泄洪阈值。

进一步地,所述方法的另一个实施例中,所述根据所述配置参数,将所述业务请求数据进行转发或蓄洪,包括:

若所述业务请求数据的配置参数为蓄洪处理,则将所述业务请求数据保存至蓄洪队列,获取转发令牌;

若所述业务请求数据获取到所述转发令牌,则将所述业务请求数据进行转发;

若所述业务请求数据未获取到所述转发令牌,则将所述业务请求数据保存至蓄洪池,等待泄洪时,重新进入所述蓄洪队列,获取所述转发令牌,直至所述业务请求数据获取到所述转发令牌或生命周期结束。

进一步地,所述方法的另一个实施例中,所述根据所述配置参数,将所述业务请求数据进行转发或蓄洪,包括:

若所述业务请求数据的配置参数为直接转发,则直接转发所述业务请求数据。

另一方面,本说明书提供了一种业务请求数据的处理装置,包括:

数据接收模块,用于接收业务请求数据;

配置参数获取模块,用于获取所述业务请求数据对应的配置参数,所述配置参数包括:直接转发、自动转发、蓄洪处理;

数据处理模块,用于根据所述配置参数,将所述业务请求数据进行转发或蓄洪。

进一步地,所述装置的另一个实施例中,所述数据处理模块包括自动转发单元,用于:

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足蓄洪阈值,则将所述业务请求数据保存至蓄洪队列;

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足泄洪阈值,则将所述业务请求数据进行转发。

进一步地,所述装置的另一个实施例中,所述自动转发单元还用于:

根据业务请求数据的流量和/或下游系统的响应时间,动态调整所述蓄洪阈值、所述泄洪阈值。

进一步地,所述装置的另一个实施例中,所述数据处理模块包括蓄洪处理单元,用于:

若所述业务请求数据的配置参数为蓄洪处理,则将所述业务请求数据保存至蓄洪队列,获取转发令牌;

若所述业务请求数据获取到所述转发令牌,则将所述业务请求数据进行转发;

若所述业务请求数据未获取到所述转发令牌,则将所述业务请求数据保存至蓄洪池,等待泄洪时,重新进入所述蓄洪队列,获取所述转发令牌,直至所述业务请求数据获取到所述转发令牌或生命周期结束。

进一步地,所述装置的另一个实施例中,所述数据处理模块包括直接转发单元,用于:

若所述业务请求数据的配置参数为直接转发,则直接转发所述业务请求数据。

再一方面,本说明书提供了业务请求数据的处理系统,包括:

业务接入模块,用于配置业务场景的配置参数,提供业务接口,所述配置参数包括:直接转发、自动转发、蓄洪处理;

决策控制模块,用于根据业务请求数据对应的配置参数,将所述业务请求数据进行转发或蓄洪;

业务处理模块,用于执行所述业务请求数据对应的任务。

进一步地,所述系统的另一个实施例中,所述决策控制模块还用于:

根据接收到的业务请求数据,和/或,根据业务请求数据的历史数据,确定所述业务请求数据的流量;

根据所述业务请求数据的流量、下游系统的响应时间,动态调整蓄洪阈值、泄洪阈值。

进一步地,所述系统的另一个实施例中,所述业务处理模块包括:业务处理器、业务路由器、消息监听器,所述业务处理器用于根据所述业务请求数据执行对应的任务,所述业务路由器用于将所述业务请求数据发送至对应的业务处理器,所述消息监听器用于监测所述决策控制模块。

还一方面,本说明书提供了业务请求数据的处理设备,包括:至少一个处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述业务请求数据的处理方法。

再一方面,本说明书提供了一种业务请求数据的处理系统,包括至少一个处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述业务请求数据的处理方法。

本说明书提供的业务请求数据的处理方法、装置、处理设备、系统,将待处理数据进行属性转换,将转换后的数据进行数据拼接,并对获得的拼接数据进行哈希映射,利用哈希映射后的特征值进行特征筛选,筛选出属性特征比较显著的特征数据。能够快速的寻找出具备显著性的属性类特征或属性类衍生特征,该特征具备很强的可解释性,能够供业务专家理解并快速运营至业务中。同时,本说明书实施例采用的hash(哈希算法)方法能够将数据进行快速的转换,实现了一种轻量级的暴力衍生实现方法,使得所有的属性及其枚举都能够在输入特征范围内,保证特征的完备性,提高了特征数据生成的准确性。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本说明书一个实施例中业务请求数据的处理方法的流程示意图;

图2是本说明书又一个实施例中业务请求数据的处理流程示意图;

图3是本说明书提供的业务请求数据的处理装置一个实施例的模块结构示意图;

图4是本说明书一个实施例中业务请求数据的处理系统的结构示意图;

图5是应用本申请实施例的业务请求数据处理服务器的硬件结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。

系统在运营过程中,需要处理不同的请求,当业务请求量比较大时,系统的负载比较大,承受能力有限,对于请求的处理速度就会降低,甚至给系统的性能造成一定的影响。

本说明书实施例中提供了一种业务请求数据的处理方法,根据业务请求数据对应的配置参数,按照配置参数对应的发送方式,将业务请求数据发送给下游系统,保护了下游系统,实现业务请求数据的合理处理。

本说明书中业务请求数据的处理方法可以应用在客户端或服务器中,客户端可以是智能手机、平板电脑、智能可穿戴设备(智能手表、虚拟现实眼镜、虚拟现实头盔等)、智能车载设备等电子设备。

本说明书实施例中的“蓄洪”可以表示对当前的业务请求通过本说明书实施例提供的技术方案按照一定的规则进行储存,如:当系统无法承载当前的业务请求时会进行蓄洪,即暂时将业务请求进行存储,等到满足业务规则时,再对业务请求进行处理。“泄洪”可以表示对已经存在的业务请求根据系统的承受能力,按照一定的规则将业务请求进行发送。

具体的,图1是本说明书一个实施例中业务请求数据的处理方法的流程示意图,如图1所示,本说明书一个实施例中提供的业务请求数据的处理方法的整体过程可以包括:

步骤102、接收业务请求数据。

在具体的实施过程中,有些业务场景需要执行相应的任务时,可以向系统发送业务请求数据,业务请求数据中可以带有业务场景标识、请求获取的数据标识、请求执行的任务命令等。如:业务请求数据可以包括:获取某用户的芝麻信用分值的请求、获取某商品的信息的请求等。本说明书实施例中,可以提供业务接口,不同业务场景的业务数据可以通过业务接口接入本说明书实施例中的业务请求数据的处理装置。

步骤104、获取所述业务请求数据对应的配置参数,所述配置参数包括:直接转发、自动转发、蓄洪处理。

在具体的实施过程中,本说明书一个实施例在业务数据接入时,可以根据实际需要进行参数配置,本说明书实施例中的配置参数可以包括业务数据的处理规则如:直接转发、自动转发、蓄洪处理。当然根据实际需要配置参数还可以包括其他的参数,如:蓄洪池的大小,蓄洪、泄洪的时间、蓄洪阈值、泄洪阈值等。本说明书一个实施例中,在接收到业务请求数据时,可以获取业务请求数据对应的配置参数,即获取业务请求数据对应的处理规则。

在进行参数的配置时,可以根据业务场景设置配置参数,即一个业务场景的业务请求数据可以对应相同的配置参数,业务场景可以表示不同的业务类型,例如可以包括:芝麻信用业务、商品查询业务、订单处理业务、转账业务等。本说明书实施例中的业务请求数据的处理装置可以接入不同的业务场景,不同业务场景在接入时可以通过业务接口进行参数配置。在接收到业务请求数据时,可以根据业务请求数据对应的业务场景,获取到该业务请求数据对应的配置参数。

步骤106、根据所述配置参数,将所述业务请求数据进行转发或蓄洪。

获取到业务请求数据的配置参数后,每一种配置参数可以对应有一个业务处理规则,根据配置参数可以按照对应的业务处理规则对该业务请求数据进行相应的处理。例如:若配置参数为直接转发,则可以将业务请求数据直接转发至下游系统;若配置参数为自动转发,则可以根据当前系统的处理能力以及系统的请求量,直接转发或等待一定时间后再转发该业务请求数据;若配置参数为蓄洪处理,则可以将业务请求数据进行蓄洪,等待泄洪时再进行转发。

本说明书实施例提供的业务请求数据的处理方法,根据业务请求数据的配置参数,按照一定的业务规则对业务请求数据进行转发或蓄洪处理,避免了因业务请求数据过多,给下游系统带来过大的压力,保护了下游系统的性能,实现了业务请求数据的灵活处理,提高了系统的数据处理能力,对于数据请求量比较大的系统同样可以适用。

在上述实施例的基础上,本说明书一个实施例中,所述根据所述配置参数,将所述业务请求数据进行转发或蓄洪,包括:

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足蓄洪阈值,则将所述业务请求数据保存至蓄洪队列;

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足泄洪阈值,则将所述业务请求数据进行转发。

在具体的实施过程中,接收到业务请求数据后,获取业务请求数据对应的配置参数,若配置参数为自动转发,则可以判断当前系统是否满足蓄洪阈值或泄洪阈值,例如:可以判断当前系统的业务数据请求量是否达到蓄洪阈值或泄洪阈值,或当前系统的下游系统的响应时间是否达到蓄洪阈值或泄洪阈值,或响应时间以及请求量均符合蓄洪阈值或泄洪阈值。若在接收到业务请求数据时,系统满足蓄洪阈值,如:响应时间大于蓄洪阈值对应的响应时间,或业务数据请求量大于蓄洪阈值对应的请求量,或响应时间和业务数据请求量分别大于蓄洪阈值对应的响应时间、请求量,则可以将接收到的业务请求数据保存至蓄洪队列。当系统满足泄洪阈值如:响应时间达到泄洪阈值或业务请求数据量达到泄洪阈值时,则可以将存储到蓄洪队列的业务请求数据进行泄洪处理,即转发至下游系统,或者,也可以在指定的时间将存储到蓄洪队列的业务请求数据进行转发处理。

若业务请求数据对应的参数配置为自动转发,且接收到业务请求数据时,系统满足泄洪阈值,如:响应时间小于等于泄洪阈值对应的响应时间,和/或系统的请求量小于等于泄洪阈值对应的请求量,则可以认为当前系统的处理能力比较好,可以将接收到的业务请求数据直接转发至下游系统。

此外,当业务请求数据保存至蓄洪队列时,蓄洪队列中的业务请求数据可以依次转发,如:若蓄洪队列中有100个业务请求数据,100个业务请求数据可以根据发送请求的时间进行排队,在系统承载能力满足时,依次转发至下游系统。

其中,蓄洪阈值、泄洪阈值可以根据系统的承载能力、先验知识、专家经验等进行设置,在对业务请求数据进行配置时,若配置参数为自动转发,则可以根据系统的历史数据、先验知识、专家经验等设置好蓄洪阈值、泄洪阈值。本说明书一个实施例中,还可以根据业务请求数据的流量和/或下游系统的响应时间,动态调整所述蓄洪阈值、所述泄洪阈值。在业务请求数据处理的过程中,可以根据系统的实时数据,动态调整蓄洪阈值、泄洪阈值的大小,再根据蓄洪阈值、泄洪阈值,决策业务请求数据的处理方式。

其中,业务请求数据的流量即请求量可以通过实时统计系统接收到的业务请求数据获得,也可以根据系统的历史数据预测获得,下游系统的响应时间也可以根据实时监测下游系统的响应时间或根据下游系统的历史数据预测获得。根据获得的系统的业务请求数据的流量和/或下游系统的响应时间后,可以实时对设置的蓄洪阈值和泄洪阈值进行调整。例如:若预先设置的蓄洪阈值为a,泄洪阈值为b,根据实时统计结果,发现下游系统的响应时间减小了,即下游系统的处理能力增大了,则可以将蓄洪阈值a、泄洪阈值b减小,以使得业务请求数据可以及时得到处理。还可以根据系统的请求量与下游系统的响应时间的比例,对蓄洪阈值和泄洪阈值进行调整,如:若当前系统的请求量远远大于系统的响应时间,则可以认为当前系统的承载量比较大,处理能力不足,可以增大蓄洪阈值、泄洪阈值,将业务请求数据先进行存储。若系统的请求量小于系统的响应时间,

本说明书实施例,当业务请求数据的配置参数为自动转发时,可以根据系统的承载能力、请求量以及蓄洪阈值、泄洪阈值,自动的进行业务请求数据的处理,实现了业务请求数据的自动处理。此外,本说明书实施例还可以根据系统的流量和响应时间,动态的调整蓄洪阈值、泄洪阈值,以确保系统处于比较高的处理能力,提高业务请求数据的处理效率。

在上述实施例的基础上,所述根据所述配置参数,将所述业务请求数据进行转发或蓄洪,包括:

若所述业务请求数据的配置参数为蓄洪处理,则将所述业务请求数据保存至蓄洪队列,获取转发令牌;

若所述业务请求数据获取到所述转发令牌,则将所述业务请求数据进行转发;

若所述业务请求数据未获取到所述转发令牌,则将所述业务请求数据保存至蓄洪池,等待泄洪时,重新进入所述蓄洪队列,获取所述转发令牌,直至所述业务请求数据获取到所述转发令牌或生命周期结束。

在具体的实施过程中,若接收到的业务请求数据的配置参数为蓄洪处理(如:对于处理时间要求比较宽松的数据),则可以将业务请求数据加入蓄洪队列,等待获取转发令牌。转发令牌可以表示转发标识,获取转发令牌可以理解为根据进入蓄洪队列的时间先后,依次为进入蓄洪队列的业务请求数据贴上转发标识。转发令牌的数量可以根据实际需要进行设置,当业务请求数据获取到转发令牌时,则可以将业务请求数据进行转发。若业务请求数据没有获取到转发令牌,则可以将业务请求数据存储至蓄洪池,等待泄洪时,重新进入蓄洪队列,获取转发令牌。若业务请求数据仍没有获取到转发令牌,则再进入蓄洪池,重复上述动作,直至业务请求数据获取到转发令牌,或业务请求数据的生命周期结束,即业务请求数据失效。蓄洪池可以表示用于存储暂时不处理的业务请求数据的存储区域。

其中,泄洪规则可以根据实际需要进行设置,如:当蓄洪池中的业务请求数据量达到预设值时或蓄洪池达到一定的承载能力后,进行泄洪;或设置泄洪时间如:在指定的时间段进行泄洪等。可以根据实际需要设置泄洪规则,本说明书实施例不作具体限制。

例如:若预先设置每秒发送100个转发令牌,进入蓄洪队列的业务请求数据根据时间先后,依次获取转发令牌,获取到转发令牌的业务请求数据可以直接转发至下游系统。当101个业务请求数据进来时,转发令牌已经用完,可以将该业务请求数据存储值蓄洪池。在到达泄洪时间时,蓄洪池内的业务请求数据再次进入蓄洪队列,继续排队获取转发令牌,获取到转发令牌的业务请求数据可以直接转发,若仍未获取到业务请求数据,则再存储到蓄洪池,等待下一次泄洪时,再进入蓄洪队列,直至该业务请求数据获取到转发令牌或生命周期结束。

本说明书实施例,当业务请求数据的配置参数为蓄洪处理时,将业务请求数据加入蓄洪队列,按照蓄洪规则和泄洪规则,对业务请求数据进行处理,实现了业务请求数据的灵活蓄洪和泄洪,提高了系统的性能,保护了下游系统。

本说明书又一个实施例中,若接收到的业务请求数据的配置参数为直接转发,如:对于处理时间要求比较高的数据,则可以直接将接收到的业务请求数据转发至下游系统,以确保该业务请求数据可以得到及时的处理。

本说明书实施例中,可以根据不同业务场景对于数据处理时间的要求不同,设置配置参数,根据业务请求数据的配置参数,对接收到的业务请求数据进行对应的处理,既保证了业务请求数据处理的及时性,也能够结合系统的处理能力、请求量等,对业务请求数据进行灵活处理,确保系统能够保持在一个较高的处理能力,提高了系统的性能和业务请求数据的处理效率。

图2是本说明书又一个实施例中业务请求数据的处理流程示意图,如图2所示,本说明书一个实施例中的业务请求数据的处理过程可以参考如下:

1、首先接收业务请求数据,根据接收到的业务请求数据的标记,可以识别业务请求数据对应的业务场景,进一步获取业务请求数据的配置参数,配置参数可以包括:直接转发、自动转发、蓄洪处理。其中业务请求数据的配置参数可以在接入系统时根据实际需要按照预先设置的配置参数进行配置,本说明书实施例不作具体限定。

2、若业务请求数据的配置参数为直接转发,则直接转发业务请求数据,如图2所示,可以将业务请求数据抓发至下游系统即对应的业务处理器中,由业务处理器执行业务请求数据对应的任务。

3、若业务请求数据的配置参数为自动转发,则可以通过流控模块和蓄洪泄洪模块进行业务请求数据的处理,流控模块可以实时统计请求量和业务处理的响应时间,蓄洪泄洪模块可以根据这两者比例实时调配蓄洪阈值和泄洪阈值。当系统达到蓄洪阈值时,则将业务请求数据进行蓄洪处理,当系统达到泄洪阈值时,则将业务请求数据转发至下游系统。如图2所示,当系统处于蓄洪阈值时,接收到的业务请求数据可以进入蓄洪队列,进行蓄洪处理,蓄洪处理的过程可以参考下一步骤。

4、若业务请求数据的配置参数为蓄洪处理,蓄洪处理的规则可以根据实际需要手动配置,不会自动决策。配置参数为蓄洪处理的业务请求数据,首先会进入蓄洪队列,获取转发令牌。转发令牌数量为预先配置好的,获取到转发令牌则直接转发业务请求数据,否则进入蓄洪池,待泄洪时重新进入蓄洪队列获取准发令牌,直到出队或生命周期结束。泄洪规则可以根据实际需要进行设置,如:设置泄洪时间或泄洪空间的要求等,具体可以参考上述实施例的记载,此处不再赘述。

如图2所示,将业务请求数据转发至下游系统即业务处理器后,还可以统计下游系统的响应数据,即统计下游系统的响应时间,结合统计出的系统的请求量,用于调整蓄洪阈值、泄洪阈值。在自动转发的配置情况下,可以动态的决策蓄洪、泄洪处理规则,使得业务请求数据的处理能够保持较高的效率。

本说明书实施例,可以支持业务系统按一定的业务规则进行蓄洪和泄洪,从而保护下游的业务系统,还可以跟进上游业务量及下游的业务处理能力动态决策蓄洪或泄洪的阀值,实现业务请求数据的灵活处理,提高业务请求数据的处理效率。

本说明书中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。相关之处参见方法实施例的部分说明即可。

基于上述所述的业务请求数据的处理方法,本说明书一个或多个实施例还提供一种业务请求数据的处理装置。所述的装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本说明书实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明书实施例具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

具体地,图3是本说明书提供的业务请求数据的处理装置一个实施例的模块结构示意图,如图3所示,本说明书中提供的业务请求数据的处理装置包括:数据接收模块31、配置参数获取模块32、数据处理模块33,其中:

数据接收模块31,可以用于接收业务请求数据;

配置参数获取模块32,可以用于获取业务请求数据对应的配置参数,所述配置参数包括:直接转发、自动转发、蓄洪处理;

数据处理模块33,可以用于根据所述配置参数,将所述业务请求数据进行转发或蓄洪。

本说明书实施例提供的业务请求数据的处理装置,根据业务请求数据的配置参数,按照一定的业务规则对业务请求数据进行转发或蓄洪处理,避免了因业务请求数据过多,给下游系统带来过大的压力,保护了下游系统的性能,实现了业务请求数据的灵活处理,提高了系统的数据处理能力。

在上述实施例的基础上,所述数据处理模块包括自动转发单元,用于:

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足蓄洪阈值,则将所述业务请求数据保存至蓄洪队列;

若所述业务请求数据的配置参数为自动转发,且接收所述业务请求数据时,业务请求量和/或响应时间满足泄洪阈值,则将所述业务请求数据进行转发。

本说明书实施例,当业务请求数据的配置参数为自动转发时,可以根据系统的承载能力、请求量以及蓄洪阈值、泄洪阈值,自动的进行业务请求数据的处理,实现了业务请求数据的自动处理。此外,本说明书实施例还可以根据系统的流量和响应时间,动态的调整蓄洪阈值、泄洪阈值,以确保系统处于比较高的处理能力,提高业务请求数据的处理效率。

在上述实施例的基础上,所述自动转发单元还用于:

根据业务请求数据的流量和/或下游系统的响应时间,动态调整所述蓄洪阈值、所述泄洪阈值。

本说明书实施例提供的业务请求数据的处理装置,根据系统的请求量即流量和响应时间动态调整蓄洪阈值、泄洪阈值,使得业务请求数据的蓄洪或泄洪处理更加合理,适应于系统的状态,提高业务请求数据的处理效率。

在上述实施例的基础上,所述数据处理模块包括蓄洪处理单元,用于:

若所述业务请求数据的配置参数为蓄洪处理,则将所述业务请求数据保存至蓄洪队列,获取转发令牌;

若所述业务请求数据获取到所述转发令牌,则将所述业务请求数据进行转发;

若所述业务请求数据未获取到所述转发令牌,则将所述业务请求数据保存至蓄洪池,等待泄洪时,重新进入所述蓄洪队列,获取所述转发令牌,直至所述业务请求数据获取到所述转发令牌或生命周期结束。

本说明书实施例提供的业务请求数据的处理装置,当业务请求数据的配置参数为蓄洪处理时,将业务请求数据加入蓄洪队列,按照蓄洪规则和泄洪规则,对业务请求数据进行处理,实现了业务请求数据的灵活蓄洪和泄洪,提高了系统的性能,保护了下游系统。

在上述实施例的基础上,所述数据处理模块包括直接转发单元,用于:

若所述业务请求数据的配置参数为直接转发,则直接转发所述业务请求数据。

本说明书实施例,可以根据不同业务场景对于数据处理时间的要求不同,设置配置参数,根据业务请求数据的配置参数,对接收到的业务请求数据进行对应的处理,既保证了业务请求数据处理的及时性,也能够结合系统的处理能力、流量等,对业务请求数据进行灵活处理,确保系统能够保持在一个较高的处理能力,提高了系统的性能和业务请求数据的处理效率。

需要说明的,上述所述的装置根据方法实施例的描述还可以包括其他的实施方式。具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。

本说明书实施例还提供一种业务请求数据的处理设备,包括:至少一个处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述实施例的业务请求数据的处理方法,如:

接收业务请求数据;

获取所述业务请求数据对应的配置参数,所述配置参数包括:直接转发、自动转发、蓄洪处理;

根据所述配置参数,将所述业务请求数据进行转发或蓄洪。

所述存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。所述存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如ram、rom等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、u盘;利用光学方式存储信息的装置如,cd或dvd。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。

需要说明的,上述所述的处理设备根据方法实施例的描述还可以包括其他的实施方式。具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。

图4是本说明书一个实施例中业务请求数据的处理系统的结构示意图,如图4所示,本说明书一个实施例中可以提供一种业务请求数据的处理系统,具体可以包括:

业务接入模块,可以用于配置业务场景的配置参数,提供业务接口,所述配置参数包括:直接转发、自动转发、蓄洪处理;

决策控制模块,可以用于根据业务请求数据对应的配置参数,将所述业务请求数据进行转发或蓄洪;

业务处理模块,可以用于执行所述业务请求数据对应的任务。

如图4所示,本说明书实施例提供的业务请求数据的处理系统在处理业务请求数据时主要包括4个阶段:业务接入、决策-流控阶段、业务执行阶段,图4中的决策阶段和流控阶段可以看作是一个阶段。业务接入阶段可以表示通过业务接口以及参数配置,将不同的业务系统接入到业务请求数据的处理系统。决策-流控阶段可以表示根据接收到的业务请求数据的配置参数对业务请求数据进行蓄洪、泄洪处理。执行阶段可以表示根据业务请求数据的请求,执行对应的任务,如:业务请求数据请求获取某用户的芝麻信用分,则执行阶段的业务处理器则获取并返回该用户的芝麻信用分。

在具体的实施过程中,如图4所示,图4中的统一服务门面可以表示业务接口如api((applicationprogramminginterface,应用程序编程接口)接口,图4中接入业务以及统一服务门面可以表示业务接入模块,有需求的业务可以通过配置参数的方式与统一的服务门面对接集成,接入本说明书实施例中的业务请求数据的处理系统。图4中,决策层可以表示决策控制模块,当有业务请求数据过来时,首先进入决策层,决策层会实时统计业务请求的tps(transactionpersecond,每秒处理的消息数),同时还会根据业务场景的历史数据对tps进行预测获得系统的预测流量。决策层还可以根据统计获得的业务请求数据的流量即tps和/或下游系统的响应时间,动态调整蓄洪阈值、泄洪阈值。决策层根据业务请求数据对应的配置参数不同,将业务请求数据进行转发或蓄洪处理。本说明书实施例中的配置参数可以包括:直接转发:不蓄洪,流量实时到下游系统。自动转发:自动根据上游系统的流量及下有系统的处理能力动态调整蓄洪和泄洪的配置,进行业务请求数据的动态处理。蓄洪处理:根据业务场景中配置的参数进行蓄洪和泄洪,不会动态调整。图4中的业务处理器可以表示业务处理模块,决策控制模块可以将业务请求数据发送至业务处理模块,业务处理模块接收到业务请求数据后,对业务请求数据进行相应的处理。

如图4所示,执行阶段的业务处理模块可以包括:业务处理器、业务路由器、消息监听器,业务处理器用于根据所述业务请求数据执行对应的任务,业务处理器中可以包括多个业务场景处理器,根据实际使用需要,不同的业务场景的业务请求数据可以由指定的业务场景处理器进行处理。业务路由器则可以根据业务请求数据对应的业务场景,将业务请求数据发送至对应的业务处理器即对应的业务场景处理器。此外,业务处理模块还可以包括消息监听器用于监测决策控制模块,当决策控制模块将业务请求数据发送至业务处理模块时,则通知业务路由器进行数据的转发。

此外,业务处理模块可以通过每个业务处理器的响应时间来评估下游业务系统的能力,可以将评估出的下游系统的响应时间反馈至决策控制模块,由决策控制模块根据系统的请求量和响应时间动态调整蓄洪阈值、泄洪阈值。同时在执行阶段决策控制模块还可以为各个业务处理器提供的基础的组件能力,如:幂等控制组件、并发组件、任务补偿组件等,幂等控制组件可以用于控制是否有业务请求数据重复转发,并发组件可以用于将多条业务请求数据一起转发,任务补偿组件可以对发送失败的请求进行收集,然后进行补偿重新发送。

本说明书实施例提供的业务请求数据的处理系统,可以接入不同的业务场景,对不同业务场景的业务请求数据进行参数配置,根据配置参数自动进行数据的处理。实现了基于一定的业务规则进行业务请求数据的蓄洪、泄洪,保护了下游系统,并且可以基于系统的业务量和下游系统的处理能力动态决策蓄洪或泄洪的阈值,使得业务请求数据的处理适应系统的状态,提高了业务请求数据处理的效率和灵活性。

本说明书提供的业务请求数据的处理系统可以为单独的业务请求数据的处理系统,也可以应用在多种数据分析处理系统中。所述系统可以包括上述实施例中任意一个业务请求数据的处理装置。所述的系统可以为单独的服务器,也可以包括使用了本说明书的一个或多个所述方法或一个或多个实施例装置的服务器集群、系统(包括分布式系统)、软件(应用)、实际操作装置、逻辑门电路装置、量子计算机等并结合必要的实施硬件的终端装置。所述核对差异数据的检测系统可以包括至少一个处理器以及存储计算机可执行指令的存储器,所述处理器执行所述指令时实现上述任意一个或者多个实施例中所述方法的步骤。

本说明书实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,图5是应用本申请实施例的业务请求数据处理服务器的硬件结构框图。如图5所示,服务器10可以包括一个或多个(图中仅示出一个)处理器100(处理器100可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器200、以及用于通信功能的传输模块300。本邻域普通技术人员可以理解,图5所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器10还可包括比图5中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如数据库或多级缓存、gpu,或者具有与图5所示不同的配置。

存储器200可用于存储应用软件的软件程序以及模块,如本说明书实施例中的业务请求数据的处理方法对应的程序指令/模块,处理器100通过运行存储在存储器200内的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器200可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器200可进一步包括相对于处理器100远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输模块300用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输模块300包括一个网络适配器(networkinterfacecontroller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块300可以为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书提供的上述实施例所述的方法或装置可以通过计算机程序实现业务逻辑并记录在存储介质上,所述的存储介质可以计算机读取并执行,实现本说明书实施例所描述方案的效果。

本说明书实施例提供的上述业务请求数据的处理方法或装置可以在计算机中由处理器执行相应的程序指令来实现,如使用windows操作系统的c++语言在pc端实现、linux系统实现,或其他例如使用android、ios系统程序设计语言在智能终端实现,以及基于量子计算机的处理逻辑实现等。

需要说明的是说明书上述所述的装置、计算机存储介质、系统根据相关方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照对应方法实施例的描述,在此不作一一赘述。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

尽管本说明书实施例内容中提到数据接收、参数配置、数据转发等之类的数据获取、交互、计算、判断等操作和数据描述,但是,本说明书实施例并不局限于必须是符合行业通信标准、标准计算机数据处理和数据存储规则、通信协议和标准数据模型/模板或本说明书实施例所描述的情况。某些行业标准或者使用自定义方式或实施例描述的实施基础上略加修改后的实施方案也可以实现上述实施例相同、等同或相近、或变形后可预料的实施效果。应用这些修改或变形后的数据获取、存储、判断、处理方式等获取的实施例,仍然可以属于本说明书的可选实施方案范围之内。

本说明书实施例并不局限于必须是符合行业通信标准、标准计算机数据处理和数据存储规则或本说明书一个或多个实施例所描述的情况。某些行业标准或者使用自定义方式或实施例描述的实施基础上略加修改后的实施方案也可以实现上述实施例相同、等同或相近、或变形后可预料的实施效果。应用这些修改或变形后的数据获取、存储、判断、处理方式等获取的实施例,仍然可以属于本说明书实施例的可选实施方案范围之内。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmablelogicdevice,pld)(例如现场可编程门阵列(fieldprogrammablegatearray,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardwaredescriptionlanguage,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

虽然本说明书一个或多个实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

本发明是参照根据本发明实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储、石墨烯存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

以上所述仅为本说明书一个或多个实施例的实施例而已,并不用于限制本本说明书一个或多个实施例。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1