任务的运行方法、装置和电子设备与流程

文档序号:15145707发布日期:2018-08-10 20:25阅读:93来源:国知局

本申请涉及计算机技术领域,更具体地涉及任务的运行方法、装置和电子设备。



背景技术:

风控系统对业务进行分控分析的过程中可能会命中正式运行策略和试运行策略,对外部业务输出的数据只获取正式运行策略的决策结果,用于业务评估的数据同时获取正式运行策略的决策结果和试运行策略的决策结果。对于单层策略体系需要在一次分析后合并正式运行策略的决策结果并对外输出,然后将正式运行策略和试运行策略合并后存储为分析数据。但对于多层策略体系,不但要分离出不同策略的决策结果还要将不同的合并结果输出到下一层进一步作为分析的数据,这将会带来十分高昂的代价去剥离和合并决策结果。

因此,需求一种任务的运行方法,来克服上述技术问题。



技术实现要素:

本申请的目的在于提供一种任务的运行方法、装置和电子设备,实现对外部业务输出的数据和用于业务评估的数据的解耦合,降低实现剥离和合并决策结果的复杂度。

为解决上述技术问题,本申请实施例是这样实现的:

第一方面,提供了一种任务的运行方法,包括:

在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略;

在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

第二方面,提供一种任务的运行装置,包括:

判断单元,在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略

任务运行单元,在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

第三方面,提供一种电子设备,包括:

处理器;以及

被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使用所述处理器执行以下操作:

在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略;

在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

第四方面,提供一种计算机可读介质,所述计算机可读介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:

在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略;

在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

由以上本申请实施例提供的技术方案可见,本申请实施例在运行完正式运行任务后,如果存在目标试运行任务,则开启异步线程运行目标试运行任务,使得试运行任务相对于正式运行任务时单独运行的,与正式运行任务的运行过程彻底隔离开,能够使试运行任务的运行结果与正式运行任务的运行结果实现解耦合,从而实现用于业务评估的数据和对外部业务输出的数据的解耦合,降低风控系统中剥离和合并决策结果的复杂度。

附图说明

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

图1是根据本申请的一个实施例的业务的运行方法的示意性流程图。

图2是根据本申请一个具体实施例的业务的运行方法的示意性流程图。

图3是根据本申请实施例的电子设备的结构框图。

图4是根据本申请实施例的任务的运行装置的结构示意图。

具体实施方式

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

图1是根据本申请的一个实施例的任务的运行方法的流程图。图1的方法由任务的运行装置执行。

如图1所示出的,在s102处,在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略。

需要说明的是,图1所示的方法中的风控系统是基于分层策略的系统。分层策略是按照风控策略的管控范围分出多层业务逻辑层进行策略体系管控,例如,多层业务逻辑层包括但不限于可信层、识别层和决策层等。

还需要说明的是,正式运行策略可以理解为处于正式运行状态的策略,试运行策略可以理解为处于试运行状态的策略,试运行策略需要通过试运行的方式评估该试运行策略的落地数据是否符合业务预期。正式运行任务本质是一个对业务负责的分析流程,独立单独分析并对业务负责。试运行任务本质是一个用于对试运行策略进行评估的分析流程,试运行任务的运行结果仅供业务同学进行评估分析,不会对业务造成干扰。

具体地,在一些实施例中,运行正式运行任务本质上是运行风控系统中的多层业务逻辑层配置的正式运行策略。在运行多层业务逻辑层配置的正式运行策略时,运行前一层业务逻辑层的正式运行策略的运行结果会输出给后一层业务逻辑层,即运行后一层业务逻辑层的正式策略时会依赖运行前一层的正式运行策略的运行结果。正式运行任务运行完成时,输出正式运行任务的运行结果。这里正式运行任务的运行结果为合并运行多层业务逻辑层的正式运行策略的运行结果得到的结果。

举例来说,以多层业务逻辑层依次包括可信层、识别层和决策层为例,运行可信层配置的正式运行策略的得到运行结果需要输出给识别层,运行识别层配置的正式运行策略时依赖可信层的运行结果,运行识别层配置的正式运行策略得到的运行结果需要输出给决策层,运行决策层配置的正式运行策略时依赖识别层的运行结果,最后将运行可信层配置的正式运行策略得到的运行结果、运行识别层配置的正式运行策略得到的运行结果和运行决策层配置的正式运行策略得到的运行结果合并处理后输出给外部业务。

具体地,在一些实施例中,运行目标试运行任务本质上是运行多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略,以及运行所述多层业务逻辑层以外的其他业务逻辑层配置的正式运行策略。在运行目标业务逻辑层配置的试运行策略时依赖于该目标业务逻辑层的前一层业务逻辑层的正式运行策略的运行结果,该目标业务逻辑层配置的正式运行策略的运行结果需要输出给该目标业务逻辑层的下一层业务逻辑层,该下一层业务逻辑层运行配置的正式运行策略时依赖于目标业务逻辑层配置的正式运行策略的运行结果。试运行任务运行完成时,存储试运行任务的运行结果。这里试运行任务的运行结果包括与试运行任务相关的分析日志和数据。也就是说,试运行任务的运行结果时不会对外部业务输出的,不会对正式业务造成干扰。

举例来说,以多层业务逻辑层依次包括可信层、识别层和决策层为例,目标业务逻辑层为识别层,即在运行目标试运行任务时,需要运行识别层配置的试运行策略和正式运行策略,并且需要运行可信层配置的正式运行策略和决策层配置的正式运行策略。在运行目标试运行任务时,运行可信层配置的正式运行策略得到可信层的运行结果,在运行识别层配置的试运行策略时依赖可信层的运行结果,在运行识别层配置的正式运行策略时依赖可信层的运行结果,之后在运行决策层配置的正式运行策略时,依赖运行识别层配置的正式运行策略的运行结果。在运行完目标试运行任务时,存储与目标试运行任务相关的分析日志和数据。

可选地,在一些实施例中,分析日志包括目标试运行任务命中的具体的风控策略,例如,可信层命中风控策略a/风控策略b,识别层命中风控策略c/风控策略d。数据包括事件快照、变量快照以及模型快照等。在这里事件快照可以理解为业务请求体的信息,或者理解为业务数据,在风控系统中将这些业务请求体的信息封装成一个风控事件。变量快照可以理解为风控策略条件的具体值,例如,一个风控策略条件为:手机号是否在黑名单中,比较值为ture/false,变量快照会记录手机号是否在黑名单中这个风控策略条件时通过还是不通过。模型快照可以理解为系统部署的模型运行出来的分值。例如,系统中部署一个神经网络模型,该神经网络模型用于计算用户的可信分值,则模型快照会记录业务数据(当笔分析)通过该神经网络模型计算出来的分值。

可选地,在一些实施例中,确定是否存在目标试运行任务,包括:根据多个业务逻辑层的试运行策略配置情况,判断是否存在目标试运行任务;在多个业务逻辑层中存在配置有试运行策略的业务逻辑层时,确定存在目标试运行任务,并将配置有试运行策略的业务逻辑层确定为目标业务逻辑层;在多个业务逻辑层中不存在配置有试运行策略的业务逻辑层时,确定不存在目标试运行任务。

作为一个例子,在多个业务逻辑层中存在配置的策略对应的标签为目标标签的业务逻辑层时,确定在多个业务逻辑层中存在配置有试运行策略的业务逻辑层。或者可以理解成为正式运行策略和试运行策略分配不同的标签(tag),根据标签即可以确定出一个业务逻辑层配置的是正式运行策略还是试运行策略。

进一步地,在一些实施例中,在确定多个业务逻辑层设置的试运行任务开关处于开启状态时,根据多个业务逻辑层的试运行策略配置情况,判断是否存在目标试运行任务。也就是说,在判断是否存在目标试运行任务时首先判断一下多个业务逻辑层中是否存在设置的试运行任务开关处于开启状态的业务逻辑层,如果不存在设置的试运行任务开关处于开启状态的业务逻辑层,则直接判断不存在目标试运行任务。如果存在设置的试运行任务开关处于开启状态的业务逻辑层,再进一步判断试运行任务开关处于开启状态的业务逻辑层的试运行策略配置情况,如果试运行任务开关处于开启状态的业务逻辑层配置有试运行策略,则确定存在目标试运行任务,并将配置有试运行策略的业务逻辑层确定为目标业务逻辑层。如果试运行任务开关处于开启状态的业务逻辑层没有配置试运行策略,则确定不存在目标试运行任务。

可选地,在一些实施例中,一个域(或称为租户)每一层业务逻辑层会单独启动试运行任务。或者可以理解为,针对一个租户来讲,试运行任务只会运行一个业务逻辑层上配置的试运行策略和正式运行策略,且运行其他业务逻辑层上配置的正式运行策略。这里的域可以是根据业务对应的风险类型进行划分的,一个业务可能会有多个域。例如,一个业务可能对应账户盗用、营销作弊和商户风险三个风险类型,则该业务会包括账户盗用、营销作弊和商户风险三个域。

在s104处,在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

需要说明的是,在s104处开启异步线程可以理解为,开启一个独立于运行正式运行任务的线程的一个新的线程。由此试运行任务独立于正式运行任务被运行,与正式运行任务的运行过程彻底隔离开,实现试运行任务的运行结果和正式运行任务的运行结果的解耦合。

可选地,在一些实施例中,目标试运行任务的数量为多个,开启异步线程执行目标试运行任务包括:开启一个异步线程;通过所述一个异步线程运行多个目标试运行任务。例如,对于对时效性要求不高的风控系统或业务来说,将目标试运行任务添加到试运行任务队列中,启动一个异步线程,按照目标试运行任务在试运行任务队列中的顺序运行这多个目标试运行任务。在这里,不同租户的试运行任务可以并发在一个异步线程上运行。

可选地,在另一些实施例中,目标试运行任务的数量为多个,开启异步线程执行目标试运行任务包括:开启多个异步线程;通过所述多个异步线程执行多个目标试运行任务,不同的异步线程执行的目标试运行任务不同。例如,对于时效性要求高的风控系统或业务来说,可以开启多个异步线程,同时运行多个试运行任务,能够提高试运行任务的处理速度,满足风控系统或业务的时效性要求。

举例来说,如果有4个目标试运行任务需要运行,则可以开启4个异步线程执行同时执行者4个目标试运行任务,每个异步线程执行一个目标试运行任务。但是也可以开启小于4个异步线程执行这4个目标试运行任务。具体开启的异步线程的数量可以根据系统或业务对时效性的要求以及系统资源的配置情况确定。

下面将结合图2详细描述根据本申请一具体实施例的任务的运行方法。图2所示的方法由任务的运行装置执行。图2所示的方法可以适用于基于分层策略的风控系统。

如图2所示出的,在s202处,业务进入风控系统。

在s204处,执行任务对业务进行风控分析。

在s206处,执行业务后置处理,判断是否执行试运行任务。

需要说明的是,如果在s204处运行的任务本身是试运行任务,则不会衍生出新的试运行任务,即在s206处确定不执行试运行任务。如果在s204处运行的任务时正式运行任务,则基于业务配置信息判断是否执行试运行任务,这里的业务配置信息可以具体指示各个业务逻辑层设置的试运行任务开关的开启状态,以及指示配置有试运行策略的业务逻辑层。

在s208处,如果执行试运行任务,则开启异步线程执行试运行任务。

具体地,执行试运行任务本质是执行业务配置信息指示的配置有试运行策略的业务逻辑层配置的试运行策略和正式运行策略,以及运行其他业务逻辑层配置的正式运行策略。

可选地,可以根据试运行任务的数量确定开启的异步线程的数量。

在s210处,如果不执行试运行任务,则获取任务的运行结果。

可以理解的是,如果在s204处执行的任务为正式运行任务,则在s210处获取任务的运行结果后可以输出给外围业务。如果在s204处执行的任务为试运行任务,则在s210处,获取任务的运行结果后仅会保存与运行试运行任务相关的分析日志和数据,这里与运行试运行任务相关的分析日志和数据与图1所示的方法中的分析日志和任务类似,为避免重复,在此不再详述。并且保存的分析日志和数据供业务同学进行评估分析,不会对正式业务造成干扰。

以上结合图1和图2详细描述了根据本申请实施例的业务的运行方法。下面将结合图3详细描述根据本申请实施例的电子设备。参考图3,在硬件层面,电子设备包括处理器,可选地,包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random-accessmemory,ram),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。

处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。

处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成任务的运行装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:

在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略;

在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

上述如本申请图1和图2所示实施例揭示的任务的运行装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1和图2所示实施例的方法,并具体用于执行以下方法:

在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略;

在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

图4是本申请的一个实施例的任务的运行装置的结构示意图。请参考图4,在一种软件实施方式中,任务的运行装置400可包括:判断单元401和任务运行单元402,其中,

判断单元401,在运行完正式运行任务后,判断是否存在目标试运行任务,所述正式运行任务用于运行风控系统中的多层业务逻辑层配置的正式运行策略,所述目标试运行任务用于运行所述多层业务逻辑层中的目标业务逻辑层配置的试运行策略和正式运行策略、以及运行所述多层业务逻辑层中目标业务逻辑层以外的其他业务逻辑层配置的正式运行策略

任务运行单元402,在存在所述目标试运行任务时,开启异步线程运行所述目标试运行任务。

本申请实施例的任务的运行装置在运行完正式运行任务后,如果存在目标试运行任务,则开启异步线程运行目标试运行任务,使得试运行任务相对于正式运行任务是单独运行的,与正式运行任务的运行过程彻底隔离开,能够使试运行任务的运行结果与正式运行任务的运行结果实现解耦合,从而实现用于业务评估的数据和对外部业务输出的数据的解耦合,降低风控系统中剥离和合并决策结果的复杂度。

可选地,作为一个实施例,所述判断单元401:

根据所述多个业务逻辑层的试运行策略配置情况,判断是否存在目标试运行任务;

在所述多个业务逻辑层中存在配置有试运行策略的业务逻辑层时,确定存在目标试运行任务,并将所述配置有试运行策略的业务逻辑层确定为所述目标业务逻辑层;

在所述多个业务层中不存在配置有试运行策略的业务逻辑层时,确定不存在目标试运行任务。

可选地,作为一个实施例,所述判断单元401:

在所述多个业务逻辑层中存在配置的策略对应的标签为目标标签的业务逻辑层时,确定在所述多个业务逻辑层中存在配置有试运行策略的业务逻辑层。

可选地,作为一个实施例,所述判断单元401:

在确定所述多个业务逻辑层设置的试运行任务开关处于开启状态时,根据所述多个业务逻辑层的试运行策略配置情况,判断是否存在目标试运行任务;

可选地,作为一个实施例,所述目标试运行任务的数量为多个;

其中,所述任务运行单元402:

开启一个异步线程;

通过所述一个异步线程运行多个目标试运行任务。

可选地,作为一个实施例,所述目标试运行任务的数量为多个;

其中,所述任务运行单元402:

开启多个异步线程;

通过所述多个异步线程运行多个目标试运行任务,不同的异步线程执行的目标试运行任务不同。

可选地,作为一个实施例,如图4所示,任务的运行装置400还包括结果处理单元403;

所述结果处理单元403:在运行完所述正式运行任务时,输出所述正式运行任务的运行结果。

可选地,作为一个实施例,如图4所示,任务的运行装置400还包括结果处理单元403;

所述结果处理单元403:在运行完所述目标试运行任务时,存储所述目标试运行任务的运行结果,所述目标试运行任务的运行结果包括与所述目标试运行任务相关的分析日志和数据。

任务的运行装置400还可执行图1和图2所示实施例的方法,并实现任务的运行装置在图1和图2所示实施例的功能,本申请实施例在此不再赘述。

总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

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

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

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

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

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