数据处理任务执行方法和装置与流程

文档序号:11133732阅读:407来源:国知局
数据处理任务执行方法和装置与制造工艺

本发明涉及数据处理技术领域,特别是涉及一种数据处理任务执行方法和装置。



背景技术:

在数据处理技术领域,对数据进行处理时,往往需要建立数据处理任务,并将建立的数据处理任务发送至执行服务器,执行服务器获取到数据处理任务并执行。

然而,在传统的数据处理领域中,设置有多台执行服务器,当多台执行服务监测到有数据处理任务生成时,都会获取数据处理任务,并执行获取到的数据处理任务,这样多台执行服务器都在执行数据处理任务,会导致一个数据处理任务被多台执行服务器重复的执行,使得一个数据处理任务时耗费过多的资源,造成了数据处理资源的浪费。



技术实现要素:

基于此,有必要针对数据处理任务执行过程中资源浪费的问题,提供一种数据处理任务执行方法和装置。

一种数据处理任务执行方法,应用于执行服务器,所述方法包括:

接收分发服务器发送的任务分发通知;

根据所述任务分发通知向排序服务器发送任务执行请求;

从所述排序服务器获取执行服务器排序结果,所述执行服务器排序结果由所述排序服务器在接收到各执行服务器发送的任务执行请求后,根据所述任务执行请求生成;

确定本地的执行服务器在所述服务器排序结果中的排序位置,判断所述排序位置是否在预设排序范围之内;在判定所述排序位置在预设排序范围之内时,从所述分发服务器获取所述数据处理任务并执行。

在其中一个实施例中,所述根据所述任务分发通知向排序服务器发送任务执行请求之后,还包括:

接收所述排序服务器发起的投票请求,所述投票请求用于选取执行数据处理任务的执行服务器;

根据所述投票请求生成投票信息;

将所述投票信息发送至所述排序服务器,使所述排序服务器根据接收到的各执行服务器返回的投票信息生成执行服务器排序结果。

在其中一个实施例中,所述根据所述任务分发通知向排序服务器发送任务执行请求之后,还包括:

接收所述排序服务器发送资源利用率获取请求;

根据所述资源利用率获取请求提取资源利用率,将提取到的资源利用率返回至所述排序服务器,使所述排序服务器根据接收到的各执行服务器返回的资源利用率生成执行服务器排序结果。

在其中一个实施例中,所述确定本地的执行服务器在所述服务器排序结果中的排序位置,判断所述排序位置是否在预设排序范围之内,包括:

提取执行服务器排序结果中排在第一的执行服务器标识;

将提取到的执行服务器标识与自身标识进行比对;

若所述提取到的执行服务器标识与所述自身标识一致,则判定本地的执行服务器的排序位置在预设排序范围之内。

在其中一个实施例中,所述从所述分发服务器获取所述数据处理任务并执行,包括:

向所述分发服务器发送携带有执行服务器标识的任务获取请求;

接收数据处理任务,所述数据处理任务为所述分发服务器根据执行服务器排序结果对所述执行服务器标识验证通过后返回的。

上述数据处理任务执行方法,在接收到分发服务器发送的任务分发通知后,根据任务分发通知向排序服务器发送任务执行请求,排序服务器根据接收到的各执行服务器发送的任务执行请求对执行服务器进行排序生成执行服务器排序结果。执行服务器从排序服务器获取执行服务器排序结果,在根据执行服务器排序结果确定本地的执行服务器在预设排序范围之内时,从分发服务器获取数据处理任务并执行。这样,通过执行服务器排序结果对具有执行数据处理任务权限的执行服务器的数量进行控制,避免了多个执行服务器在接收到任务分发通知时,同时从分发服务器获取数据处理任务造成数据拥塞的情况,也避免了数据处理任务被多个执行服务器重复执行的情况,从而节省了执行数据处理任务时所消耗的数据处理资源。

一种数据处理任务执行装置,应用于执行服务器,所述装置包括:

分发通知接收模块,用于接收分发服务器发送的任务分发通知;

执行请求发送模块,用于根据所述任务分发通知向排序服务器发送任务执行请求;

排序结果获取模块,用于从所述排序服务器获取执行服务器排序结果,所述执行服务器排序结果由所述排序服务器在接收到各执行服务器发送的任务执行请求后,根据所述任务执行请求生成;

排序位置判断模块,用于确定本地的执行服务器在所述服务器排序结果中的排序位置,判断所述排序位置是否在预设排序范围之内;

数据任务获取模块,用于在判定所述排序位置在预设排序范围之内时,从所述分发服务器获取所述数据处理任务并执行。

在其中一个实施例中,所述装置还包括:

投票请求接收模块,用于接收所述排序服务器发起的投票请求,所述投票请求用于选取执行数据处理任务的执行服务器;

投票信息生成模块,用于根据所述投票请求生成投票信息;

投票信息发送模块,用于将所述投票信息发送至所述排序服务器,使所述排序服务器根据接收到的各执行服务器返回的投票信息生成执行服务器排序结果。

在其中一个实施例中,所述装置还包括:

获取请求接收模块,用于接收所述排序服务器发送资源利用率获取请求;

资源利用率返回模块,用于根据所述资源利用率获取请求提取资源利用率,将提取到的资源利用率返回至所述排序服务器,使所述排序服务器根据接收到的各执行服务器返回的资源利用率生成执行服务器排序结果。

在其中一个实施例中,所述排序位置判断模块包括:

标识提取模块,用于提取执行服务器排序结果中排在第一的执行服务器标识;

标识比对模块,用于将提取到的执行服务器标识与自身标识进行比对;

排序确定模块,用于若所述提取到的执行服务器标识与所述自身标识一致,则判定本地的执行服务器的排序位置在预设排序范围之内。

在其中一个实施例中,所述数据任务获取模块包括:

任务请求发送模块,用于向所述分发服务器发送携带有执行服务器标识的任务获取请求;

数据任务接收模块,用于接收数据处理任务,所述数据处理任务为所述分发服务器根据执行服务器排序结果对所述执行服务器标识验证通过后返回的。

上述数据处理任务执行装置,在接收到分发服务器发送的任务分发通知后,根据任务分发通知向排序服务器发送任务执行请求,排序服务器根据接收到的各执行服务器发送的任务执行请求对执行服务器进行排序生成执行服务器排序结果。执行服务器从排序服务器获取执行服务器排序结果,在根据执行服务器排序结果确定本地的执行服务器在预设排序范围之内时,从分发服务器获取数据处理任务并执行。这样,通过执行服务器排序结果对具有执行数据处理任务权限的执行服务器的数量进行控制,避免了多个执行服务器在接收到任务分发通知时,同时从分发服务器获取数据处理任务造成数据拥塞的情况,也避免了数据处理任务被多个执行服务器重复执行的情况,从而节省了执行数据处理任务时所消耗的数据处理资源。

附图说明

图1为一个实施例中数据处理任务执行系统的应用环境图;

图2为一个实施例中数据处理任务执行方法的流程示意图;

图3为一个实施例中根据投票信息生成执行服务器排序结果的步骤的流程示意图;

图4为一个实施例中根据资源利用率生成执行服务器排名结果的步骤的流程示意图;

图5为一个实施例中根据执行服务器排序结果确定执行数据处理任务权限的步骤的流程示意图;

图6为一个实施例中数据处理任务执行装置的结构框图;

图7为另一个实施例中数据处理任务执行装置的结构框图;

图8为又一个实施例中数据处理任务执行装置的结构框图;

图9为一个实施例中排序位置判断模块的结构框图;

图10为一个实施例中数据任务获取模块的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1为一个实施例中数据处理任务执行系统的应用环境图,数据处理任务执行系统包括执行服务器110、分发服务器120和排序服务器130。执行服务器110通过网络与分发服务器120连接,执行服务器110通过网络与排序服务器130连接,其中执行服务器110、分发服务器120和排序服务器130具体可以是多个,分发服务器120和排序服务器130可以为集成于同一服务器。

如图2所示,在一个实施例中,提供一种数据处理任务执行方法,本实施例以该方法具体应用在图1数据处理任务执行系统的执行服务器110上来举例说明,执行服务器110上运行有数据处理任务执行程序,数据处理任务处理程序用于实施数据处理任务处理方法,数据处理任务处理方法具体包括以下内容:

S202,接收分发服务器发送的任务分发通知。

具体地,分发服务器120接收到终端发送的数据处理任务后,获取数据处理任务的任务标识,根据任务标识生成任务分发通知,将任务分发通知发送至各执行服务器,具体可以以广播的形式将任务分发通知发送至各执行服务器110。数据处理任务也可以是在分发服务器120接收到终端发送的任务创建命令,根据任务创建命令创建数据处理任务,并为创建的数据处理任务生成任务标识。

S204,根据任务分发通知向排序服务器发送任务执行请求。

具体地,执行服务器110在接收到分发服务器120发送的任务分发通知后,提取任务分发通知中的任务标识,根据任务标识生成任务执行请求,并将生成的任务执行请求发送至排序服务器130。

S206,从排序服务器获取执行服务器排序结果,执行服务器排序结果由排序服务器在接收到各执行服务器发送任务执行请求后,根据任务执行请求生成。

具体地,排序服务器130在接收到执行服务器110发送的任务执行请求时,记录每个任务执行请求的接收时间,提取任务执行请求中的执行服务器标识,根据记录的每个任务执行请求的接收时间对从任务执行中的执行服务器标识进行排序,按照接收时间对执行服务器标识进行排序得到执行服务器排序结果,排序服务器130提取任务执行请求中的任务标识,将执行服务器排序结果与任务标识对应存储,每个任务标识对应一个执行服务器排序结果。执行服务器110向排序服务器发送携带有任务标识的排序结果获取请求,排序服务器130接收到排序结果获取请求后,提取排序结果获取请求中任务标识,查找任务标识对应的执行服务器排序结果,排序服务器130将查找到的执行服务器排序结果返回至执行服务器110。

S208,确定本地的执行服务器在服务器排序结果中的排序位置,判断排序位置是否在预设排序范围之内。

具体地,执行服务器110在接收到排序服务器130返回的执行服务器排序结果后,在执行服务器排序结果中查找自身标识的排序位置,根据自身标识的排序位置与预设排序位置范围比较,如果自身标识的排序位置在预设排序位置范围之内,则确定具有执行数据处理任务的权限;如果自身标识的排序位置不在预设排序位置范围之内,则确定不具有执行数据处理任务的权限。

S210,在判定排序位置在预设排序范围之内时,从分发服务器获取数据处理任务并执行。

具体地,执行服务器110在确定具有执行数据处理任务的权限后,向分发服务器120发送任务获取请求,任务获取请求中包括任务标识。分发服务器120在接收到执行服务器110发送的任务获取请求后,提取任务获取请求中的任务标识,根据任务标识查找数据处理任务,将查找到的数据处理任务发送至执行服务器110。

在一个实施例中,在执行服务器110从分发服务器120获取到数据处理任务后,则分发服务器120将该数据处理任务锁定,当分发服务器120在接收到获取该数据处理任务的获取请求时,则拒绝该获取请求;具体可以为该数据处理任务对应的任务标识添加锁定标记。

在一个实施例中,S210具体包括以下内容:向分发服务器发送携带有执行服务器标识的任务获取请求;接收数据处理任务,数据处理任务为分发服务器根据执行服务器排序结果对执行服务器标识验证通过后返回的。

具体地,执行服务器110向分发服务器120发送携带有执行服务器标识的任务获取请求。分发服务器120从排序服务器130获取了执行服务器排序结果,分发服务器120在接收到执行服务器110发送的任务获取请求后,提取任务请求中的执行服务器标识,根据执行服务器排序结果确定执行服务器标识的排序位置,从而验证执行服务器标识对应的执行服务器110是否具有执行数据处理任务的权限,在验证通过后,根据任务获取请求中的任务标识查找对应的数据处理任务,将查找到的数据处理任务返回至执行服务器标识对应的执行服务器110。

本实施例中,在接收到分发服务器发送的任务分发通知后,根据任务分发通知向排序服务器发送任务执行请求,排序服务器根据接收到的各执行服务器发送的任务执行请求对执行服务器进行排序生成执行服务器排序结果。执行服务器从排序服务器获取执行服务器排序结果,在根据执行服务器排序结果确定具有执行数据处理任务的权限时,从分发服务器获取数据处理任务并执行。这样,通过执行服务器排序结果对具有执行数据处理任务权限的执行服务器的数量进行控制,避免了多个执行服务器在接收到任务分发通知时,同时从分发服务器获取数据处理任务造成数据拥塞的情况,也避免了数据处理任务被多个执行服务器重复执行的情况,从而节省了执行数据处理任务时所消耗的数据处理资源。

如图3所示,在一个实施例中,S204之后具体还包括根据投票信息生成执行服务器排序结果的步骤,该步骤具体包括以下内容:

S302,接收排序服务器发起的投票请求,投票请求用于选取执行数据处理任务的执行服务器。

具体地,排序服务器130在接收到各执行服务器发送的任务执行请求后,提取任务执行请求中的执行服务器标识,根据提到得到的多个执行服务器标识生成投票请求,投票请求用于选取执行数据处理任务的执行服务器110。

S304,根据投票请求生成投票信息。

具体地,执行服务器110在接收到投票请求后,提取投票请求中的多个执行服务器标识,从提取到的多个执行服务器标识选取一个执行服务器标识,根据选取的执行服务器标识作为投票信息。

在一个实施例中,执行服务器110在接收到投票请求后,从存储的多个执行服务器标识中选取一个执行服务器标识,根据选取的执行服务器标识作为投票信息。

S306,将投票信息发送至排序服务器,使排序服务器根据接收到的各执行服务器返回的投票信息生成执行服务器排序结果。

具体地,执行服务器110在生成投票信息后,将投票信息发送至排序服务器130。排序服务器130在接收到各执行服务器发送的投票信息后,提取投票信息中的执行服务器标识,统计各执行服务器标识的票数,根据统计的票数执行服务器标识进行排序得到执行服务器排序结果。具体可以按照票数由高到低进行排序,还可以由低到高进行排序。

本实施例中,在接收都排序服务器发送的投票请求后,根据投票请求生成投票信息,将投票信息发送至排序服务器,使排序服务器根据接收到的各执行服务器返回的投票信息对执行服务器标识进行排序得到执行服务器排序结果,根据执行服务器确定执行数据处理任务的执行服务器,避免数据处理任务被多次执行,从而浪费数据处理资源。

如图4所示,在一个实施例中,S204具体还包括根据资源利用率生成执行服务器排名结果的步骤,该步骤具体包括以下内容:

S402,接收排序服务器发送资源利用率获取请求。

具体地,排序服务器130在接收到各执行服务器发送的任务执行请求后,向各执行服务器发送资源利用率获取请求,资源利用率获取请求用于获取各执行服务器的资源利用率。

S404,根据资源利用率获取请求提取资源利用率,将提取到的资源利用率返回至排序服务器,使排序服务器根据接收到的各执行服务器返回的资源利用率生成执行服务器排序结果。

具体地,执行服务器110在接收到资源利用率获取请求后,获取资源利用参数,根据资源利用参数计算资源利用率,资源利用率发送至排序服务器130。排序服务器130在接收到各执行服务器返回的资源利用率后,将资源利用率进行比较,并根据比较结果对资源利用率对应的执行服务器标识进行排序,可以按照资源利用率由低到高或者由高到低的顺序对执行服务器标识进行排序得到执行服务器排序结果。

本实施例中,根据排序服务器发送的资源利用率获取请求返回资源利用率,使排序服务器根据资源利用率对执行服务器标识进行排序生成执行服务器排序结果,根据执行服务器的资源利用率确定资源利用率较低的执行服务器执行数据处理任务,提高了数据处理任务的效率。

如图5所示,在一个实施例中,S208具体包括根据执行服务器排序结果确定执行数据处理任务权限的步骤,该步骤具体包括以下内容:

S502,提取执行服务器排序结果中排在第一的执行服务器标识。

具体地,执行服务器110在接收到执行服务器排序结果后,从执行服务器排序结果中提取排在第一的执行服务器标识。执行服务器排序结果可以是根据执行服务器标识所得票数的多少由高到低进行排列,排在第一的为得票数最高的执行服务器标识;也可以是按照执行服务器标识对应的执行服务器的资源利用率由低到高对执行服务器标识进行排序,排在第一的为资源利用率较低的执行服务器的执行服务器标识。

S504,将提取到的执行服务器标识与自身标识进行比对。

具体地,执行服务器110在从执行服务器排序结果中提取排在第一的执行服务器标识后,将提取到的执行服务器标识与自身标识比对。自身标识为执行服务器110对应的执行服务器标识。

S506,若提取到的执行服务器标识与自身标识一致,则判定本地的执行服务器的排序位置在预设排序范围之内。

具体地,执行服务器110在将提取到的执行服务器标识与自身标识比对时,若经过比对,提取到的执行服务器标识与自身标识一致,表示执行服务器110具有执行数据处理任务的权限,则执行服务器110从分发服务器获取数据处理任务并执行。

本市实施例中,从执行服务器排序结果中排在第一的执行服务器标识,将排在第一的执行服务器标识与自身标识进行比对,根据比对结果确定是否具有执行数据处理任务的权限,这样避免了所有执行服务器都去执行数据处理任务,造成数据处理资源浪费的情况。

如图6所示,在一个实施例中,提供一种数据处理任务执行装置600,该装置具体包括:分发通知接收模块602、执行请求发送模块604、排序结果获取模块606、排序位置判断模块608和数据任务获取模块610。

分发通知接收模块602,用于接收分发服务器发送的任务分发通知。

执行请求发送模块604,用于根据任务分发通知向排序服务器发送任务执行请求。

排序结果获取模块606,用于从排序服务器获取执行服务器排序结果,执行服务器排序结果由排序服务器在接收到各执行服务器发送的任务执行请求后,根据任务执行请求生成。

排序位置判断模块608,用于确定本地的执行服务器在服务器排序结果中的排序位置,判断排序位置是否在预设排序范围之内。

数据任务获取模块610,用于在判定所述排序位置在预设排序范围之内时,从分发服务器获取数据处理任务并执行。

本实施例中,在接收到分发服务器发送的任务分发通知后,根据任务分发通知向排序服务器发送任务执行请求,排序服务器根据接收到的各执行服务器发送的任务执行请求对执行服务器进行排序生成执行服务器排序结果。执行服务器从排序服务器获取执行服务器排序结果,在根据执行服务器排序结果判定本地的执行服务器的排序位置在预设排序范围之内时,从分发服务器获取数据处理任务并执行。这样,通过执行服务器排序结果对具有执行数据处理任务权限的执行服务器的数量进行控制,避免了多个执行服务器在接收到任务分发通知时,同时从分发服务器获取数据处理任务造成数据拥塞的情况,也避免了数据处理任务被多个执行服务器重复执行的情况,从而节省了执行数据处理任务时所消耗的数据处理资源。

如图7所示,在一个实施例中,数据处理任务执行装置600具体还包括:投票请求接收模块612、投票信息生成模块614和投票信息发送模块616。

投票请求接收模块612,用于接收排序服务器发起的投票请求,投票请求用于选取执行数据处理任务的执行服务器。

投票信息生成模块614,用于根据投票请求生成投票信息。

投票信息发送模块616,用于将投票信息发送至排序服务器,使排序服务器根据接收到的各执行服务器返回的投票信息生成执行服务器排序结果。

本实施例中,在接收都排序服务器发送的投票请求后,根据投票请求生成投票信息,将投票信息发送至排序服务器,使排序服务器根据接收到的各执行服务器返回的投票信息对执行服务器标识进行排序得到执行服务器排序结果,根据执行服务器确定执行数据处理任务的执行服务器,避免数据处理任务被多次执行,从而浪费数据处理资源。

如图8所示,在一个实施例中,数据处理任务执行装置600具体还包括:获取请求接收模块618和资源利用率返回模块620。

获取请求接收模块618,用于接收排序服务器发送资源利用率获取请求。

资源利用率返回模块620,用于根据资源利用率获取请求提取资源利用率,将提取到的资源利用率返回至排序服务器,使排序服务器根据接收到的各执行服务器返回的资源利用率生成执行服务器排序结果。

本实施例中,根据排序服务器发送的资源利用率获取请求返回资源利用率,使排序服务器根据资源利用率对执行服务器标识进行排序生成执行服务器排序结果,根据执行服务器的资源利用率确定是否可以执行数据处理任务,提高了数据处理任务的效率。

如图9所示,在一个实施例中,排序位置判断模块608具体包括:标识提取模块608a、标识比对模块608b和排序确定模块608c。

标识提取模块608a,用于提取执行服务器排序结果中排在第一的执行服务器标识。

标识比对模块608b,用于将提取到的执行服务器标识与自身标识进行比对。

排序确定模块608c,用于若提取到的执行服务器标识与自身标识一致,则判定本地的执行服务器的排序位置在预设排序范围之内。

本实施例中,从执行服务器排序结果中排在第一的执行服务器标识,将排在第一的执行服务器标识与自身标识进行比对,根据比对结果判定本地的执行服务器的排序位置在预设排序范围之内,确定具有执行数据处理任务的权限,这样避免了所有执行服务器都去执行数据处理任务,造成数据处理资源浪费的情况。

如图10所示,在一个实施例中,数据任务获取模块610具体还包括:任务请求发送模块610a和数据任务接收模块610b。

任务请求发送模块610a,用于向分发服务器发送携带有执行服务器标识的任务获取请求。

数据任务接收模块610b,用于接收数据处理任务,数据处理任务为分发服务器根据执行服务器排序结果对执行服务器标识验证通过后返回的。

本实施例中,在分发服务器接收到任务获取请求时,根据执行服务器排序结果对任务获取请求中的执行服务器标识进行验证,以保证分发服务器中的数据安全,无需额外设置验证信息。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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