CN111414243A - 确定访问路径的方法和装置、存储介质及电子装置 - Google Patents
确定访问路径的方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN111414243A CN111414243A CN202010198121.7A CN202010198121A CN111414243A CN 111414243 A CN111414243 A CN 111414243A CN 202010198121 A CN202010198121 A CN 202010198121A CN 111414243 A CN111414243 A CN 111414243A
- Authority
- CN
- China
- Prior art keywords
- task
- access
- target
- tasks
- subtasks
- 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.)
- Withdrawn
Links
Images
Classifications
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
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)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种确定访问路径的方法和装置、存储介质及电子装置。其中,该方法包括:获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务;在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径,实现了任务按照依赖关系和优先级顺序执行的技术效果,进而解决了现有技术中,确定任务路径的方式单一的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种确定访问路径的方法和装置、存储介质及电子装置。
背景技术
在复杂的数据处理场景下,通常会将一次作业拆分不同阶段的任务,这些任务相互依赖,只有当所有前置任务都执行成功后才会执行当前任务;同时可能会根据资源要求、紧急程度,对每个任务划分为不同的优先级,高优先级的任务优先执行。这些任务构成了具有优先级的任务DAG。对于串行执行的情况下,如何找到一条任务执行路径,保证前置任务和重要紧迫任务优先执行,在任务调度过程中至关重要。目前,大多场景的依赖任务执行方式大多是针对无优先级的。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种确定访问路径的方法和装置、存储介质及电子装置,以至少解决现有技术中,确定任务路径的方式单一的技术问题。
根据本发明实施例的一个方面,提供了一种确定访问路径的方法,包括:获取访问任务,其中,所述访问任务用于访问无前置依赖的目标任务以及对应所述目标任务的子任务;在所述目标任务至少包括两个的情况下,按照优先级顺序访问所述目标任务,并将已访问的所述目标任务加入访问队列中;在所述目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问所述子任务,并将已访问的所述子任务加入到所述访问队列中;其中,将所述访问队列中的所述目标任务以及所述子任务访问的先后顺序确定为目标作业的访问路径。
根据本发明实施例的另一方面,还提供了一种确定访问路径的装置,包括:获取单元,用于获取访问任务,其中,所述访问任务用于访问无前置依赖的目标任务以及对应所述目标任务的子任务;第一访问单元,用于在所述目标任务至少包括两个的情况下,按照优先级顺序访问所述目标任务,并将已访问的所述目标任务加入访问队列中;第二访问单元,用于在所述目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问所述子任务,并将已访问的所述子任务加入到所述访问队列中;其中,将所述访问队列中的所述目标任务以及所述子任务访问的先后顺序确定为目标作业的访问路径。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述确定访问路径的方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的确定访问路径的方法。
在本发明实施例中,通过获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务;在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径,达到了根据无前置依赖关系的目标任务开始进行访问,并对目标任务对应的多个子任务按照优先级进行访问的目的,从而实现了任务按照依赖关系和优先级顺序执行的技术效果,进而解决了现有技术中,确定任务路径的方式单一的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的确定访问路径的方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的确定访问路径的方法的流程图;
图3是根据本发明实施例的一种可选的基于优先级的DAG任务的生成执行路径的方法的流程图;
图4是根据本发明实施例的一种可选的DAG-1结构示意图;
图5是根据本发明实施例的一种可选的确定访问路径的装置的结构示意图;
图6是根据本发明实施例的一种可选的确定访问路径的方法的电子装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种确定访问路径的方法,可选地,作为一种可选的实施方式,上述确定访问路径的方法可以但不限于应用于如图1所示的硬件环境中的确定访问路径的系统中,其中,该确定访问路径的系统可以包括但不限于终端设备102、网络110及服务器112。
其中,上述终端设备102中可以包括但不限于:人机交互屏幕104,处理器106及存储器108。人机交互屏幕104用于通过人机交互接口获取人机交互指令,还用于呈现已访问或待访问的目标任务;处理器106用于响应上述人机交互指令,访问目标任务以及目标任务对应的子任务。存储器108用于存储目标任务以及目标任务对应的子任务等信息。这里服务器可以包括但不限于:数据库114及处理引擎116,处理引擎116用于调用数据库114中存储的目标任务,在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径,达到了根据无前置依赖关系的目标任务开始进行访问,并对目标任务对应的多个子任务按照优先级进行访问的目的,从而实现了任务按照依赖关系和优先级顺序执行的技术效果,进而解决了现有技术中,确定任务路径的方式单一的技术问题。
具体过程如以下步骤:在终端设备102中的人机交互屏幕104显示待访问的路径任务。如步骤S102-S112,获取访问请求,并将该访问请求通过网络110发送服务器112。在服务器112在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径,达到了根据无前置依赖关系的目标任务开始进行访问,并对目标任务对应的多个子任务按照优先级进行访问的目的,从而实现了任务按照依赖关系和优先级顺序执行的技术效果,进而解决了现有技术中,确定任务路径的方式单一的技术问题。然后将上述确定出的结果返回终端设备102。
选地,在本实施例中,上述确定访问路径的方法可以但不限于应用于服务器112中,用于协助应用客户端确定访问路径。其中,上述应用客户端可以但不限于运行在终端设备102中,该终端设备102可以但不限于为手机、平板电脑、笔记本电脑、PC机等支持运行应用客户端的终端设备。上述服务器112和终端设备102可以但不限于通过网络实现数据交互,上述网络可以包括但不限于无线网络或有线网络。其中,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络。上述有线网络可以包括但不限于:广域网、城域网、局域网。上述仅是一种示例,本实施例中对此不作任何限定。
可选地,作为一种可选的实施方式,如图2所示,上述确定访问路径的方法包括:
步骤S202,获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务。
步骤S204,在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中。
步骤S206,在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径。
可选的,在本实施例中,在目标任务对应的子任务的至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列,包括:在目标任务的存在多级子任务、且多级中的每级都至少包括两个子任务的情况下,按照任务优先级顺序访问每级中的子任务,并将已访问的子任务加入到访问队列中。
需要说明的是,在目标任务至少包括两个的情况下,随机访问相同优先级的目标任务,并将已访问的目标任务加入访问队列中。
其中,在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中,包括:将已访问的目标任务的状态标记为已访问状态。
通过本申请提供的实施例,获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务;在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径,达到了根据无前置依赖关系的目标任务开始进行访问,并对目标任务对应的多个子任务按照优先级进行访问的目的,从而实现了任务按照依赖关系和优先级顺序执行的技术效果,进而解决了现有技术中,确定任务路径的方式单一的技术问题。
作为一种可选的实施例,在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中之前,上述方法包括:根据访问请求查找到目标任务至少包括两个的情况下,按照任务优先级降序排序。
作为一种可选的实施例,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务之前,上述方法还包括:对目标作业对应的所有任务状态都初始化为未访问的状态。
作为一种可选的实施例,本申请还提供了一种基于优先级的DAG任务的生成执行路径的方法。如图3所示,基于优先级的DAG任务的生成执行路径的方法的流程图。具体包括以下步骤:
步骤101,查找入度为0的任务,并计算出入度为0的任务数num,如果num大于1,则转到步骤102;否则转到103;
步骤102,对入度为0的任务按照优先级降序排序,转到步骤103;
步骤103,依次遍历入度为0的任务,转到步骤104;
步骤104,获取任务访问状态,如果已访问,转到步骤106,否则转到步骤105;
步骤105,对任务进行访问,将任务加入到队列中,并把状态置为已访问,转到步骤106;
步骤106,查找子任务,计算子任务数num,如果num等于0,则转到步骤103继续遍历下一个入度为0的任务;如果num等于1则转到步骤107;如果num大于1,则转到步骤107;
步骤107,对子任务按照优先级降序排序,转到步骤108;
步骤108,依次遍历子任务,转到步骤109;
步骤109,获取子任务访问状态,如果是已访问,则转到步骤106,继续访问子任务的子任务;如果是未访问则转到步骤110;
步骤110,获取未访问父任务数num,如果num等于0则转到步骤111;如果num等于1则转到步骤113;如果num大于1则转到步骤112;
步骤111,对任务进行访问,将任务加入到队列中,并把状态置为已访问;
步骤112,对父任务按照优先级降序排序,转到步骤113;
步骤113,依次遍历父任务,转到步骤114;
步骤114,获取父任务访问状态,如果已访问,则转到步骤113继续遍历下一个父任务;如果未访问,则转到步骤110,递归查找父任务的父任务数;直至所有入度为0的任务的深度访问都已完成,则任务加入队列的顺序即为生成的任务执行路径。
可选的,本实施例的方法还可以具体包括以下步骤:
1)将DAG中的所有任务状态都初始化为未访问(UNVISITED);
2)查找DAG任务中,所有入度为0(没有前置依赖)的任务,如果任务数大于1则并按照任务的优先级降序排序,否则不用排序,相同优先级的任务在访问时随机选择;
3)按顺序访问入度为0的任务,如果其状态为未访问,则标记为已访问状态,并将该任务加到队列中;如果其状态为已访问,则不加入队列;
4)查找3)中任务的所有子任务,如果子任务数大于1,则按照任务优先级对子任务降序排序;如果任务数等于1,则不用排序;如果任务数为0,则返回到3)继续访问下一个入度为0的任务;
5)顺序选择4)中一个子任务进行访问,判断该子任务状态。如果是已访问,则继续按照4)中的方式即递归访问子任务的子任务;如果是未访问,则查找该子任务是否存在其他未访问父任务,如果存在且父任务数大于1,则对它的所有父任务按优先级降序排序,如果为1,则不用排序,然后判断每个父任务状态;如果是未访问,再递归判断父任务是否存在前置任务,直至该子任务所有的前置任务都已被访问;再对该子任务进行访问,状态置为已访问,并将该子任务加入到队列中。
6)再以该子任务为起点,重复4)、5),直至该子任务的后置依赖任务全部被访问。对于由未访问状态变成已访问状态的任务,需要标记为已访问状态,同时加入到队列中。
7)重复3)~7)直至遍历完所有入度为0的任务,所有的任务都已被访问,并加入到队列中。队列中任务访问的先后顺序即为生成的DAG任务的执行路径。
具体实施方案步骤:
1)假设现有优先级任务DAG-1,DAG中有任务T0(3)、T1(2)、T2(6)、T4(5)、T5(1)、T6(4)、T7(0)、T8(7),括号中的数字表示该任务的优先级,所有任务默认初始化为未访问状态UNVISITED;存在任务队列TQ[]。DAG-1结构示意图,如图4所示。
2)查找DAG-1中所有入度为0的任务,即无父任务的任务,并对这些任务按照优先级降序排列。DAG-1中入度为0的任务排序为T2->T0->T1;
3)依次对入度为0的任务进行访问,先试图访问T2,判断其状态为未访问,即[T2,UNVISITED],于是对T2进行访问,将T2加入到队列TQ中并把状态置为已访问:[T2,VISITED],队列TQ变为[T2];
4)再深度查找T2是否存在子任务,发现存在子任务T4、T6,任务数大于1,需要对子任务按优先级降序排序:T4->T6;
5)先试图访问优先级较高的子任务T4,查找T4是否存在未访问的父任务,发现还存在一个未访问的父任务T0,不需要排序;
6)再试图访问父任务T0,判断其父任务T0的状态为未访问[T0,UNVISITED],再查找T0是否存在未访问父任务,发现不存在,于是对T0进行访问,将T0加入队列TQ中并把状态置为已访问:[T0,VISITED],队列TQ变为[T2,T0];
7)此时,T4的所有父任务T0、T2均已被访问,则对T4进行访问,将T4加入队列TQ中并把状态置为已访问:[T4,VISITED],队列TQ变为[T2,T0,T4];
8)查找T4是否存在子任务,发现只存在一个子任务T7,于是试图访问T7,判断其状态为未访问[T7,UNVISITED],再查找T7是否存在未访问的父任务,发现只存在一个未访问父任务T5,[T5,UNVISITED],不需要对父任务排序;
10)试图对任务T5进行访问,查找T5是否存在未访问父任务,发现存在未访问父任务T1,为[T1,UNVISITED];
11)试图对任务T1进行访问,查找T1是否存在未访问的父任务,发现不存在,于是对T1进行访问,将T1加入队列TQ中并把状态置为已访问:[T1,VISITED],队列TQ变为[T2,T0,T4,T1];
12)此时T5的所有父任务T0,T1均已被访问,于是对T5进行访问,将T5加入队列TQ中并把状态置为已访问:[T5,VISITED],队列TQ变为[T2,T0,T4,T1,T5],
13)此时T7的所有父任务T5,T4均已被访问,于是对T7进行访问,将T7加入队列TQ中并把状态置为已访问:[T7,VISITED],队列TQ变为[T2,T0,T4,T1,T5,T7];
14)查找T7是否存在子任务,发现不存在,于是子任务T4的深度访问完成;
15)返回试图对子任务T6进行访问,判断T6状态为未访问[T6,UNVISITED],查找T6是否存在未访问父任务,发现不存在,于是对T6进行访问,将T6加入队列TQ中并把状态置为已访问:[T6,VISITED],队列TQ变为[T2,T0,T4,T1,T5,T7,T6];
16)查找T6是否存在子任务,发现只存在一个子任务T8,不需要对子任务排序,判断T8状态为未访问[T8,UNVISITED],再查找T8是否存在未访问的父任务,发现不存在,对T8进行访问,将T8加入队列TQ中并把状态置为已访问:[T8,VISITED],队列TQ变为[T2,T0,T4,T1,T5,T7,T6,T8];
17)查找T8是否存在子任务,发现不存在,于是子任务T6深度访问完成,同时以T2为起点的深度访问完成;
18)返回以T0为起点任务进行深度访问,判断T0状态为已访问,不需要再进行访问;查找T0是否存在子任务,发现存在子任务T4,T5,任务数大于1,按优先级降序排序为T4->T5;
19)先试图访问子任务T4,判断T4状态已访问,不需要进行访问;查找T4是否存在子任务,发现存在一个子任务T7,不需要排序;试图访问子任务7,判断T7状态为已访问不需要进行访问,查找T7是否存在子任务,发现不存在,T4的深度访问完成;
20)再试图访问子任务T5,判断T5状态已访问,不需要进行访问;查找T5是否存在子任务,发现存在一个子任务T7,不需要排序;试图访问子任务7,判断T7状态为已访问不需要进行访问,查找T7是否存在子任务,发现不存在,T5的深度访问完成,同时以T0为起点的深度访问完成;
21)返回以T1为起点任务进行深度访问,判断T1状态为已访问,不需要再进行访问;查找T1是否存在子任务,发现存在子任务T9,T5,任务数大于1,按优先级降序排序为T9->T5;
22)先试图访问子任务T9,判断T9状态为未访问[T9,UNVISITED];查找T9是否存在未访问的父任务,发现不存在,则对T9进行访问,加入队列TQ中,将T9置为已访问:[T9,VISITED],队列变为TQ[T2,T0,T4,T1,T5,T7,T6,T8,T9];
23)20)再试图访问子任务T5,判断T5状态已访问,不需要进行访问;查找T5是否存在子任务,发现存在一个子任务T7,不需要排序;试图访问子任务7,判断T7状态为已访问不需要进行访问,查找T7是否存在子任务,发现不存在,T5的深度访问完成,同时以T0为起点的深度访问完成;
24)至此,所有以入度为0的任务为起点进行深度访问已完成,全部任务已被访问,并加入队列。
队列中任务的顺序T2->T3->T4->T1->T5->T7->T6->T8->T9即为此优先级依赖任务的执行路径。
通过本申请提供的实施例,在访问某个未访问任务前保证它的所有前置依赖(父任务)已经被访问过,并加入队列中,然后再访问该任务,同时标记该任务为已访问状态,加入到队列中;然后采用深度查找的方式,先访问优先级高的后置任务(子任务);再运行优先级较低的子任务,递归方式执行,直至所有的任务都已被访问。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述确定访问路径的方法的确定访问路径的装置。如图5所示,该装置包括:
获取单元51,用于获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务。
第一访问单元53,用于在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中。
第二访问单元55,用于在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;
其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径。
可选的,在本实施中,上述第二访问单元55,可以包括:访问模块,用于在目标任务的存在多级子任务、且多级中的每级都至少包括两个子任务的情况下,按照任务优先级顺序访问每级中的子任务,并将已访问的子任务加入到访问队列中。
其中,上述第一访问单元53,可以包括:标记模块,用于将已访问的目标任务的状态标记为已访问状态
通过本申请提供的实施例,获取单元51获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务;第一访问单元53在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;第二访问单元55在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径。达到了根据无前置依赖关系的目标任务开始进行访问,并对目标任务对应的多个子任务按照优先级进行访问的目的,从而实现了任务按照依赖关系和优先级顺序执行的技术效果,进而解决了现有技术中,确定任务路径的方式单一的技术问题。
作为一种可选的实施例,上述装置还可以包括:排序单元,用于在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中之前,根据访问请求查找到目标任务至少包括两个的情况下,按照任务优先级降序排序。
作为一种可选的实施例,上述装置还可以包括:
第三访问单元,用于在目标任务至少包括两个的情况下,随机访问相同优先级的目标任务,并将已访问的目标任务加入访问队列中。
作为一种可选的实施例,上述装置还可以包括:
初始化单元,用于获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务之前,对目标作业对应的所有任务状态都初始化为未访问的状态。
根据本发明实施例的又一个方面,还提供了一种用于实施上述确定访问路径的方法的电子装置,如图6所示,该电子装置包括存储器602和处理器604,该存储器602中存储有计算机程序,该处理器604被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务;
S2,在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;
S3,在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径。
可选地,本领域普通技术人员可以理解,图6所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图6其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图6中所示更多或者更少的组件(如网络接口等),或者具有与图6所示不同的配置。
其中,存储器602可用于存储软件程序以及模块,如本发明实施例中的确定访问路径的方法和装置对应的程序指令/模块,处理器604通过运行存储在存储器602内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的确定访问路径的方法。存储器602可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器602可进一步包括相对于处理器604远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器602具体可以但不限于用于存储目标任务以及目标任务对应的子任务等信息。作为一种示例,如图6所示,上述存储器602中可以但不限于包括上述确定访问路径的装置中的获取单元51、第一访问单元53及第二访问单元55。此外,还可以包括但不限于上述确定访问路径的装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置606用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置606包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置606为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子装置还包括:显示器608,用于显示上述待访问的任务;和连接总线610,用于连接上述电子装置中的各个模块部件。
根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取访问任务,其中,访问任务用于访问无前置依赖的目标任务以及对应目标任务的子任务;
S2,在目标任务至少包括两个的情况下,按照优先级顺序访问目标任务,并将已访问的目标任务加入访问队列中;
S3,在目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问子任务,并将已访问的子任务加入到访问队列中;其中,将访问队列中的目标任务以及子任务访问的先后顺序确定为目标作业的访问路径。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种确定访问路径的方法,其特征在于,包括:
获取访问任务,其中,所述访问任务用于访问无前置依赖的目标任务以及对应所述目标任务的子任务;
在所述目标任务至少包括两个的情况下,按照优先级顺序访问所述目标任务,并将已访问的所述目标任务加入访问队列中;
在所述目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问所述子任务,并将已访问的所述子任务加入到所述访问队列中;
其中,将所述访问队列中的所述目标任务以及所述子任务访问的先后顺序确定为目标作业的访问路径。
2.根据权利要求1所述的方法,其特征在于,在所述目标任务对应的子任务的至少包括多个的情况下,按照任务优先级顺序访问所述子任务,并将已访问的所述子任务加入到所述访问队列,包括:
在所述目标任务的存在多级子任务、且所述多级中的每级都至少包括两个子任务的情况下,按照任务优先级顺序访问所述每级中的所述子任务,并将已访问的所述子任务加入到所述访问队列中。
3.根据权利要求1所述的方法,其特征在于,在所述目标任务至少包括两个的情况下,按照优先级顺序访问所述目标任务,并将已访问的所述目标任务加入访问队列中之前,所述方法包括:
根据所述访问请求查找到所述目标任务至少包括两个的情况下,按照任务优先级降序排序。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标任务至少包括两个的情况下,随机访问相同优先级的所述目标任务,并将已访问的所述目标任务加入访问队列中。
5.根据权利要求1所述的方法,其特征在于,获取访问任务,其中,所述访问任务用于访问无前置依赖的目标任务以及对应所述目标任务的子任务之前,所述方法还包括:
对所述目标作业对应的所有任务状态都初始化为未访问的状态。
6.根据权利要求1所述的方法,其特征在于,在所述目标任务至少包括两个的情况下,按照优先级顺序访问所述目标任务,并将已访问的所述目标任务加入访问队列中,包括:
将已访问的所述目标任务的状态标记为已访问状态。
7.一种确定访问路径的装置,其特征在于,包括:
获取单元,用于获取访问任务,其中,所述访问任务用于访问无前置依赖的目标任务以及对应所述目标任务的子任务;
第一访问单元,用于在所述目标任务至少包括两个的情况下,按照优先级顺序访问所述目标任务,并将已访问的所述目标任务加入访问队列中;
第二访问单元,用于在所述目标任务对应的子任务至少包括多个的情况下,按照任务优先级顺序访问所述子任务,并将已访问的所述子任务加入到所述访问队列中;
其中,将所述访问队列中的所述目标任务以及所述子任务访问的先后顺序确定为目标作业的访问路径。
8.根据权利要求7所述的装置,其特征在于,所述第二访问单元,包括:
访问模块,用于在所述目标任务的存在多级子任务、且所述多级中的每级都至少包括两个子任务的情况下,按照任务优先级顺序访问所述每级中的所述子任务,并将已访问的所述子任务加入到所述访问队列中。
9.一种存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至6任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010198121.7A CN111414243A (zh) | 2020-03-19 | 2020-03-19 | 确定访问路径的方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010198121.7A CN111414243A (zh) | 2020-03-19 | 2020-03-19 | 确定访问路径的方法和装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111414243A true CN111414243A (zh) | 2020-07-14 |
Family
ID=71493078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010198121.7A Withdrawn CN111414243A (zh) | 2020-03-19 | 2020-03-19 | 确定访问路径的方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414243A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115951989A (zh) * | 2023-03-15 | 2023-04-11 | 之江实验室 | 一种基于严格优先级的协同流量调度数值模拟方法与系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104714835A (zh) * | 2013-12-16 | 2015-06-17 | 中国移动通信集团公司 | 一种数据访问处理方法及装置 |
CN104915251A (zh) * | 2015-06-05 | 2015-09-16 | 北京京东尚科信息技术有限公司 | 任务调度方法及装置 |
WO2017101652A1 (zh) * | 2015-12-17 | 2017-06-22 | 北京国双科技有限公司 | 网站页面间访问路径的确定方法及装置 |
US20180365053A1 (en) * | 2017-06-19 | 2018-12-20 | Intel Corporation | Method and apparatus for dynamically balancing task processing while maintaining task order |
CN109491801A (zh) * | 2018-09-27 | 2019-03-19 | 平安科技(深圳)有限公司 | 微服务访问调度方法、装置、介质及电子设备 |
CN109814988A (zh) * | 2017-11-22 | 2019-05-28 | 深圳竹云科技有限公司 | 任务处理方法及系统 |
US20200019442A1 (en) * | 2018-07-11 | 2020-01-16 | X-Drive Technology, Inc. | Programmable State Machine Controller in a Parallel Processing System |
-
2020
- 2020-03-19 CN CN202010198121.7A patent/CN111414243A/zh not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104714835A (zh) * | 2013-12-16 | 2015-06-17 | 中国移动通信集团公司 | 一种数据访问处理方法及装置 |
CN104915251A (zh) * | 2015-06-05 | 2015-09-16 | 北京京东尚科信息技术有限公司 | 任务调度方法及装置 |
WO2017101652A1 (zh) * | 2015-12-17 | 2017-06-22 | 北京国双科技有限公司 | 网站页面间访问路径的确定方法及装置 |
US20180365053A1 (en) * | 2017-06-19 | 2018-12-20 | Intel Corporation | Method and apparatus for dynamically balancing task processing while maintaining task order |
CN109814988A (zh) * | 2017-11-22 | 2019-05-28 | 深圳竹云科技有限公司 | 任务处理方法及系统 |
US20200019442A1 (en) * | 2018-07-11 | 2020-01-16 | X-Drive Technology, Inc. | Programmable State Machine Controller in a Parallel Processing System |
CN109491801A (zh) * | 2018-09-27 | 2019-03-19 | 平安科技(深圳)有限公司 | 微服务访问调度方法、装置、介质及电子设备 |
Non-Patent Citations (1)
Title |
---|
王兰等: "异构计算环境下基于优先队列划分的调度算法", 《小型微型计算机系统》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115951989A (zh) * | 2023-03-15 | 2023-04-11 | 之江实验室 | 一种基于严格优先级的协同流量调度数值模拟方法与系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11190536B2 (en) | Website vulnerability scan method, device, computer apparatus, and storage medium | |
CN107102788B (zh) | 应用程序通知 | |
CN107341054B (zh) | 任务执行方法、装置及计算机可读存储介质 | |
CN112988185A (zh) | 云应用更新方法、装置、系统、电子设备及存储介质 | |
WO2016040711A1 (en) | Accounts control | |
CN113760488A (zh) | 调度任务的方法、装置、设备和计算机可读介质 | |
CN108023905B (zh) | 物联网应用系统及方法 | |
CN111813517A (zh) | 任务队列的分配方法、装置、计算机设备及介质 | |
CN111507063A (zh) | 文本处理方法、装置、设备及计算机可读存储介质 | |
CN111414243A (zh) | 确定访问路径的方法和装置、存储介质及电子装置 | |
CN112748961A (zh) | 启动任务的执行方法和装置 | |
CN111026765A (zh) | 严格平衡二叉树的动态处理方法、设备、存储介质及装置 | |
CN109976744B (zh) | 一种可视化编程方法、系统及终端设备 | |
CN113885971A (zh) | 一种基于自适应平台系统的状态管理方法及装置 | |
CN111158889A (zh) | 一种批量任务处理方法及系统 | |
CN110717123A (zh) | 页面响应方法、装置、电子设备及存储介质 | |
CN104063277A (zh) | 一种信息处理方法及电子设备 | |
CN113064531B (zh) | 虚拟资源交互方法和装置、存储介质及电子设备 | |
CN113504981A (zh) | 任务调度方法和装置、存储介质及电子设备 | |
CN112631671A (zh) | 一种操作系统初始化的方法和装置 | |
CN109150951B (zh) | Android系统Activity的启动方法和装置 | |
US7849164B2 (en) | Configuring a device in a network via steps | |
CN112363819A (zh) | 大数据任务动态编排调度方法、装置及计算设备 | |
CN109144505B (zh) | Android页面的展示方法和装置 | |
CN116166342A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200714 |
|
WW01 | Invention patent application withdrawn after publication |