任务的优化处理方法、装置、计算机设备及存储介质与流程

文档序号:17397365发布日期:2019-04-13 00:55阅读:123来源:国知局
任务的优化处理方法、装置、计算机设备及存储介质与流程

本发明涉及互联网技术领域,尤其涉及一种任务的优化处理方法、装置、计算机设备及存储介质。



背景技术:

web开发中,web端也会出现需要大量计算的场景,目前常用的有两种,一种是将计算放在web端,一种是通过与后端数据交互。单纯的放在web端会消耗终端的性能,如果大部分的无需大量计算的数据依然采用与后端交互,会增加对后端的请求,对后端产生不必要的服务压力,同时消耗时间,增加等待,甚至卡顿,造成用户体验下降。



技术实现要素:

本发明的实施例提供了一种任务的优化处理方法、装置、计算机设备及存储介质,旨在提高web端任务处理的效率,以改善用户体验。

为达到上述目的,本发明所提出的技术方案为:

第一方面,本发明提供了一种任务的优化处理方法,其包括:

判断web端的任务队列中当前任务是否为目标任务,所述目标任务为预定义的需要大量运算的任务;

若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内;

从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理;

跳出目标任务,执行所述任务队列中目标任务的后续任务;以及

根据目标任务的处理结果以及任务队列中非目标任务的执行结果确定任务队列的执行结果,所述非目标任务包括所述后续任务。

第二方面,本发明的实施例提供了一种处理大量计算的优化装置,其包括:

判断单元,用于判断web端的当前任务是否存在预设的目标任务,所述目标任务为预定义的需要大量运算的任务;

存储单元,若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内;

发送单元,用于从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理;

跳出单元,用于跳出目标任务,执行所述任务队列中目标任务的后续任务;以及

接收单元,根据目标任务的处理结果以及任务队列中非目标任务的执行结果确定任务队列的执行结果,所述非目标任务包括所述后续任务。

第三方面,本发明的实施例还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的任务的优化处理方法。

第四方面,本发明的实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如上所述的任务的优化处理方法。

与现有技术相比,本发明的实施例提供了一种任务的优化处理方法、装置、计算机设备及存储介质,所述方法包括:首先对任务队列进行判断,将需要大量运算的目标任务发送至服务器,由服务器进行运算,并将结果返回至web端,一方面减少了用户等待时间,另一方面减少了对web端的资源消耗,使web端运行流畅不卡顿,从而改善用户体验。

附图说明

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

图1为本发明实施例提供的任务的优化处理方法的应用场景示意图;

图2为本发明实施例提供的任务的优化处理方法的总流程图;

图3为本发明实施例提供的任务的优化处理方法的子流程图;

图4为本发明实施例提供的任务的优化处理方法的另一实施例流程图;

图5为本发明实施例提供的任务处理的优化装置的示意性简图;以及

图6为本发明实施例提供的计算机设备的示意性框图。

具体实施方式

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

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

请参阅附图1,附图1为本发明实施例提供的任务的优化处理方法的应用场景示意图,该任务的优化处理方法应用于用户端10,通过用户端10与服务器20的通信交互,由用户端识别出web端中需要大量运算的目标任务并发送至服务器,由服务器进行运算,并将结果返回至web端,以实现对web端中包含多个任务的任务队列的快速处理,减少了对web端的资源消耗,使web端运行流畅不卡顿,给用户带来更好体验。

图2为本发明实施例提供的任务的优化处理方法的流程示意图;如图2所示:本实施例以某一网站用户名登录验证过程为例进行阐述,该任务的优化处理方法包括以下步骤:

步骤s101、判断web端的任务队列中当前任务是否为目标任务,所述目标任务为预定义的需要大量运算的任务。

其中,所述的任务队列指为了实现某一功能需依次执行的多个任务,例如执行某一网站用户实名登录的整个用户信息输入及用户信息验证过程的全部操作。任务队列中的不同任务所需的执行时间不同,通常在一个任务队列中会存在一个或多个需要进行大量计算的任务,例如,在某一网站用户实名登录时,其中有一步或多步操作为需要大量计算的任务,例如身份证有效性验证,用户名是否存在验证或密码验证等,这些验证步骤需要进行后台数据库调用,与数据库内的已经存储的数据进行校验,以验证其合法性和有效性。由于,大量计算的目标任务的大量计算为相对概念,因此,根据项目开发的要求,需对大量计算的任务进行预定义,将其定义为目标任务并赋予区别其它任务的标识,以便在任务队列的执行过程中识别出该目标任务。

步骤s102、若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内。

其中,请参阅图3,图3为本实施例的任务的优化处理方法的子流程图,如图所示,所述步骤s102,若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内包括以下步骤:

步骤s102a、从目标任务中提取出需要大量运算的任务数据以及相应的运算算法。

在本实施例中,目标任务中需存入指定存储空间内的具体数据为从目标任务中提取出来的、需要大量运算的任务数据以及相应的运算算法,例如对于身份证验证的任务,需提取用户身份证号码,以及身份证号码验证所需要的数据库的信息,以及基于数据库对所述身份证号码的检索和验证算法,对于目标任务中与具体计算无关的数据则无需获取以节约存储空间的资源。

步骤s102b、将所述任务数据以及相应的运算算法存入指定存储空间。

提取身份号码及所需调用的数据库及验证算法之后,则将上述数据存入指定的存储空间。之所以将目标任务的数据存入指定空间,是为了节省web端的内存资源。在某一网站实名登录时,除了对身份证号码进行验证,还需要对诸如用户名、密码等的验证,而诸如用户名、密码验证步骤也可能被定义为目标任务,也即一个任务队列中存在多个目标任务,各个目标任务的运算数据及对应的算法均需存入指定的空间,而采用将多个目标任务的数据统一存储于某一指定的存储空间,则无需每一个目标任务都各自占用一定的存储空间,其不仅能节约存储空间,同时还有利于服务器对目标任务的数据进行读取,或web端将目标任务的数据向服务器发送。

步骤s103、从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理。

将存储于指定存储空间内的数据发送至服务器,由服务器对这些数据根据相应的预设运算规则进行快速运算,由于服务器性能一般比web端要强,因此其运算速度会更快,用户在web端无需等待。例如,把身份证号码、所要校验的数据库地址以及身份证号码验证运算算法发送至服务器后,服务器则立刻启动相应程序对该任务进行运算,直到得到身份证号码最终的验证是否通过的结果。

步骤s104、跳出目标任务,执行所述任务队列中目标任务的后续任务。

由于当前任务为需进行大量运算的目标任务,在将其发送至服务器而由服务器进行处理之后,web端需先跳出当前任务,继续执行后续任务,以避免产生卡顿,在处理后续任务时若该任务为无需大量运算的非目标任务,则直接执行,若仍为需要大量运算的目标任务,则继续将其发送至服务器而又服务器进行处理,直至处理完任务队列中的最后一个任务。

例如,若当前任务为身份号码验证,web端获取用户所输入的身份证号码后将相应数据发送至服务器之后,即可进入下一任务的处理。对于用户而言,输入身份证号码后,可进行下一步的操作,例如立刻输入密码等,而无需像现有的登录流程,等待身份证号码验证通过后,用户方可输入密码,如此便可以减少用户等待时间,几乎感觉不到卡顿。

步骤s105、根据目标任务的处理结果以及任务队列中非目标任务的执行结果确定任务队列的执行结果,所述非目标任务包括所述后续任务。

当web端中任务队列的所有任务均执行完毕,则获取所有任务包括目标任务和非目标任务的处理结果,并根据所有任务的处理结果来确定任务队列的执行结果。例如,若服务器反馈的目标任务结果是用户的身份证号码验证通过及密码验证通过,web端中处理的验证码也验证通过,则可得到的结果为用户登录成功;若服务器反馈的目标任务结果是用户的身份证号码验证不通过或者密码验证不通过,或web端中处理的验证码验证不通过,则最终得到的结果为用户登录失败。

请参阅图4,于另一实施例中,本实施例的任务的优化处理方法包括以下步骤:

s201a、根据预设规则对目标任务进行标签标记,所述目标任务为预定义的需要大量运算的任务。

任务队列中的不同任务所需的执行时间不同,通常在一个任务队列中会存在一个或多个需要进行大量计算的任务,例如,在某一网站用户实名登录时,其中有一步或多步操作为需要大量计算的任务,例如身份证有效性验证,用户名是否存在验证或密码验证等,这些验证步骤需要进行后台数据库调用,与数据库内的已经存储的数据进行校验,以验证其合法性和有效性。由于,大量计算的目标任务的大量计算为相对概念,因此,根据项目开发的要求,需对大量计算的任务进行预定义,将其定义为目标任务并赋予区别其它任务的标识,以便在任务队列的执行过程中识别出该目标任务。而在本实施例中对目标任务采用进行标签标记的方式对其赋予特定标识。任务队列中无需进行大量计算的其他任务则为非目标任务,非目标任务的执行在web端完成。

s201b、检测web端的当前任务是否具有标签;在对任务队列执行时,首先对当前任务进行标签检测,以识别当前执行的任务是否是目标任务。

s201c、若所述当前任务具有标签,判定当前任务为目标任务。

s202、将所述目标任务存入指定存储空间内。之所将目标任务存入指定存储空间内,是为了节约web端的内存资源,将任务队列中的多个目标任务统一存储到同一指定存储空间,可以节约内存。

s203、从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理。仅将目标任务的数据和对应的运算算法部分发送至服务器,由服务器对该目标任务的数据进行处理以得到处理结果。

s203a、监听所述服务器对所述目标任务进行处理之后所产生的处理结果的返回。所监听到的返回的运算结果与非目标任务的执行结果一起成为任务队列执行结果的判断条件。由于目标任务在一任务队列中可能存在多个,并且一个或多个目标任务在服务器中执行运算的速度不同,因此各目标任务执行的结果返回时间节点也是不同的,设置监听步骤,即为便于任何时间接收目标任务的执行返回的结果,当执行到任务队列最后一项任务后,读取该任务之前的所有目标任务执行结果,进行综合判断,以确定用户是否有权登录。

例如,在用户实名登录某一网站时,依次输入用户名、身份证号码、密码、验证码,其中身份证号码和密码需要进行校验,当用户输入身份证号码和密码后,开启监听,无论何时、无论是身份证号码还是密码的验证结果返回,web端都能检测到,并等待最后一项任务执行后,将目标任务的处理结果作为任务队列执行的判断条件。

s204、跳出目标任务,执行所述任务队列中目标任务的后续任务。即跳过当前的目标任务,执行目标任务的后续任务。例如,当用户输入身份证号码后,web端并非等待验证结果,而是直接跳转至密码输入步骤,从而减少用户等待时间。

s205、根据目标任务的处理结果以及任务队列中非目标任务的执行结果确定任务队列的执行结果。例如,最后一步为用户输入验证码后,web将前面处理的用户名、身份证号码、密码、验证码作为综合条件,若判断用户名、身份证号码、密码和验证码均正确,则最终判定该用户有权登录。

请参阅附图5,图5为本发明实施例提供的任务处理的优化装置100,其包括:判断单元102、存储单元103、发送单元104、跳出单元106、接收单元107。

判断单元102用于判断web端的当前任务是否存在预设的目标任务,所述目标任务为预定义的需要大量运算的任务。

存储单元103用于若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内。

发送单元104用于从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理。

跳出单元106用于跳出目标任务,执行所述任务队列中目标任务的后续任务。

接收单元107用于若当前条件满足预设条件,接收服务器返回的目标任务的运算结果,并根据目标任务的运算结果以及任务队列中后续任务的执行结果确定任务队列的执行结果。

在一实施例,例如本实施例中,为了明确哪些任务为目标任务,该处理大量计算的优化装置100还包括:标签标记单元101,该标签标记单元101用于根据预设规则对目标任务进行标签标记。

在一实施例,例如本实施例中,所述存储单元103包括:提取单元1031及存入单元1032。

提取单元1031用于将目标任务中的需运算的数据以及对数据运算的算法从目标任务中提取出来。

存入单元1032用于将目标任务的数据、运算算法存储至指定的存储空间。

在一实施例,例如本实施例中,为了随时接收一个或多个目标任务的运算结果返回,所述任务处理的优化装置100还包括一监听单元105,该监听单元105用于随时接收目标任务的返回结果。

请再次参阅图6,图6为本发明的实施例提供的一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。

该计算机设备为终端,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。

参阅图6,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。

该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种任务的优化处理方法。

该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。

该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行以下步骤:判断web端的任务队列中当前任务是否为目标任务,所述目标任务为预定义的需要大量运算的任务;若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内;从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理;跳出目标任务,执行所述任务队列中目标任务的后续任务;以及根据目标任务的处理结果以及任务队列中非目标任务的执行结果确定任务队列的执行结果。

在一实施例中,所述处理器502在执行所述判断web端的当前任务是否存在目标任务的步骤之前,还执行以下步骤:根据预设规则对目标任务进行标签标记。

在一实施例中,所述处理器502在执行所述判断web端的当前任务是否为目标任务的步骤时具体执行以下步骤:检测web端的当前任务是否具有标签;若所述当前任务具有标签,判定当前任务为目标任务。

在一实施例中,本发明的实施例还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现以下步骤:

步骤s101、判断web端的任务队列中当前任务是否为目标任务,所述目标任务为预定义的需要大量运算的任务。

其中,所述的任务队列指为了实现某一功能需依次执行的多个任务,例如执行某一网站用户实名登录的整个用户信息输入及用户信息验证过程的全部操作。任务队列中的不同任务所需的执行时间不同,通常在一个任务队列中会存在一个或多个需要进行大量计算的任务,例如,在某一网站用户实名登录时,其中有一步或多步操作为需要大量计算的任务,例如身份证有效性验证,用户名是否存在验证或密码验证等,这些验证步骤需要进行后台数据库调用,与数据库内的已经存储的数据进行校验,以验证其合法性和有效性。由于,大量计算的目标任务的大量计算为相对概念,因此,根据项目开发的要求,需对大量计算的任务进行预定义,将其定义为目标任务并赋予区别其它任务的标识,以便在任务队列的执行过程中识别出该目标任务。

步骤s102、若所述当前任务为目标任务,则将所述目标任务存入指定存储空间内。

步骤s103、从所述指定存储空间内获取所述目标任务并发送至服务器,以使所述服务器对所述目标任务进行处理。

将存储于指定存储空间内的数据发送至服务器,由服务器对这些数据根据相应的预设运算规则进行快速运算,由于服务器性能一般比web端要强,因此其运算速度会更快,用户在web端无需等待。例如,把身份证号码、所要校验的数据库地址以及身份证号码验证运算算法发送至服务器后,服务器则立刻启动相应程序对该任务进行运算,直到得到身份证号码最终的验证是否通过的结果。

步骤s104、跳出目标任务,执行所述任务队列中目标任务的后续任务。

由于当前任务为需进行大量运算的目标任务,在将其发送至服务器而由服务器进行处理之后,web端需先跳出当前任务,继续执行后续任务,以避免产生卡顿,在处理后续任务时若该任务为无需大量运算的非目标任务,则直接执行,若仍为需要大量运算的目标任务,则继续将其发送至服务器而又服务器进行处理,直至处理完任务队列中的最后一个任务。

例如,若当前任务为身份号码验证,web端获取用户所输入的身份证号码后将相应数据发送至服务器之后,即可进入下一任务的处理。对于用户而言,输入身份证号码后,可进行下一步的操作,例如立刻输入密码等,而无需像现有的登录流程,等待身份证号码验证通过后,用户方可输入密码,如此便可以减少用户等待时间,几乎感觉不到卡顿。

步骤s105、根据目标任务的运算结果以及任务队列中非目标任务的执行结果确定任务队列的执行结果,所述非目标任务包括所述后续任务。

当web端中任务队列的所有任务均执行完毕,则获取所有任务包括目标任务和非目标任务的处理结果,并根据所有任务的处理结果来确定任务队列的执行结果。例如,若服务器反馈的目标任务结果是用户的身份证号码验证通过及密码验证通过,web端中处理的验证码也验证通过,则可得到的结果为用户登录成功;若服务器反馈的目标任务结果是用户的身份证号码验证不通过或者密码验证不通过,或web端中处理的验证码验证不通过,则最终得到的结果为用户登录失败。

所述存储介质可以是u盘、移动硬盘、只读存储器(read-onlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。

本发明实施例的任务的优化处理方法、装置、计算机设备及存储介质,所述方法包括:首先对任务队列进行判断,将需要大量运算的目标任务发送至服务器,由服务器进行运算,并将结果返回至web端,一方面减少了用户等待时间,另一方面减少了对web端的资源消耗,给用户带来无感体验,使web端运行流畅不卡顿。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。

该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

上述内容,仅为本发明的较佳实施例,并非用于限制本发明的实施方案,本领域普通技术人员根据本发明的主要构思和精神,可以十分方便地进行相应的变通或修改,故本发明的保护范围应以权利要求书所要求的保护范围为准。

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