CN112286672A - 用于调度任务的方法、计算设备和计算机存储介质 - Google Patents
用于调度任务的方法、计算设备和计算机存储介质 Download PDFInfo
- Publication number
- CN112286672A CN112286672A CN202011601198.0A CN202011601198A CN112286672A CN 112286672 A CN112286672 A CN 112286672A CN 202011601198 A CN202011601198 A CN 202011601198A CN 112286672 A CN112286672 A CN 112286672A
- Authority
- CN
- China
- Prior art keywords
- task
- processing
- processing node
- tasks
- event
- 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.)
- Granted
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/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4831—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
- G06F9/4837—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority time dependent
-
- 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/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开涉及一种用于调度任务的方法、计算设备和计算机存储介质。该方法包括:在服务器处,流程引擎基于输入数据,创建多个待处理任务,以用于多个任务处理节点进行处理;任务引擎基于多个待处理任务和历史任务调度信息,生成用于分配多个待处理任务的任务列表;响应于任务引擎确定检测到关于任务处理节点针对第一任务的触发操作、暂停操作或输出操作的对应消息,基于对应消息分别记录待处理任务的开始处理时间、暂停处理时间或者完成处理时间;以及计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息,以用于生成用以更新历史任务调度信息的任务调度信息。本公开利于减少多个任务的整体处理耗时。
Description
技术领域
本公开总体上涉及数据处理,并且具体地,涉及用于调度任务的方法、计算设备和计算机存储介质。
背景技术
传统的用于调度任务的方案主要包括两种:第一种例如包括:由管理节点将待处理的多个任务平均分配至各任务处理节点(例如而不限于是终端设备)。第二种例如包括:由各任务处理节点以竞争方式(例如抢订单方式)获取待处理任务。
通常,各任务处理节点的处理能力存在差异、并且多个待处理任务的任务类型、难易程度也可能存在差异。因此,第一种调度任务的方案容易导致处理能力相对较弱的任务处理节点处理速度较慢,进而成为整个任务处理的瓶颈,使得整体任务或者存在依赖关系的任务难以有效率的被执行,进而使得整体任务的完成需要消耗较长时间。第二种调度任务的方案容易导致大量的处理任务被少量的善于抢订单的待处理任务所抢占,进而使得无法调动各任务处理节点的资源来执行任务,使得整体任务的完成需要消耗大量时间,并且容易降低任务的完成度。另外,在一些场景中,例如而不限于是贷款的自动审批流程中,一些待处理任务是由多个任务处理节点(例如终端设备)顺序执行,并且,其中部分待处理任务是由系统自动执行。上述传统的用于调度任务的方案无法针对穿插有自动执行任务的多个任务进行合理的分配。
综上,传统用于调度任务的方案难以针对穿插有自动执行任务的多个任务进行合理的分配,并且也无法有效地减少多个任务的整体处理耗时。
发明内容
本公开提供一种调度任务的方法、计算设备和计算机存储介质,能够针对穿插有自动执行任务的多个任务进行合理的分配,并且利于减少多个任务的整体处理耗时。
根据本公开的第一方面,提供了一种调度任务的方法。该方法包括:在服务器处,流程引擎基于输入数据,创建多个待处理任务,以用于多个任务处理节点进行处理,输入数据至少包括待处理任务的类别、任务处理节点的属性、任务事件URI和与待处理任务相关联的源数据,多个待处理任务中的每一个待处理任务与任务事件URI相关联;任务引擎基于多个待处理任务和历史任务调度信息,生成用于分配多个待处理任务的任务列表,任务列表至少包括与任务处理节点处的输入操作相关的第一任务以及由任务处理节点自动执行的第二任务,任务处理节点包括多个分立的终端设备和终端设备集群;响应于任务引擎确定检测到关于任务处理节点针对第一任务的触发操作、暂停操作或输出操作的对应消息,基于对应消息分别记录待处理任务的开始处理时间、暂停处理时间或者完成处理时间;以及基于与第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息,以用于生成用以更新历史任务调度信息的任务调度信息。
根据本发明的第二方面,还提供了一种计算设备,该设备包括:至少一个处理单元;至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令,指令当由至少一个处理单元执行时,使得计算设备执行本公开的第一方面的方法。
根据本公开的第三方面,还提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,计算机程序被机器执行时执行本公开的第一方面的方法。
在一些实施例中,调度任务的方法还包括:响应于第一预定时间间隔达到,基于所生成的任务调度信息,更新历史任务调度信息;以及呈现各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息。
在一些实施例中,第一任务为与任务处理节点的用户操作相关的事件,第二任务为任务处理节点自动执行的系统事件,任务事件URI用于标识与自动审批贷款相关联的任务事件,任务事件包括申请贷款事件、调查事件、审核事件、贷款发放事件和逾期警示事件中的多个。
在一些实施例中,调度任务的方法还包括:基于与第一任务关联的任务事件URI,确定第一任务是否为调查事件任务;响应于确定第一任务为调查事件任务,获取多个任务处理节点的多个位置信息和调查对象的目标位置信息;分别计算多个任务处理节点的多个位置信息与目标位置信息之间的距离,以便在多个任务处理节点中选择距离小于预定距离阈值的一个或者多个任务处理节点对以作为候选任务处理节点对,每一个任务处理节点对包括两个任务处理节点;以及在候选任务处理节点对中确定用于处理调查事件任务的一个任务处理节点对。
在一些实施例中,调度任务的方法还包括:获取第二预定时间间隔内已被处理的、与调查事件任务相关联的第一任务的关联数据,关联数据至少包括处理第一任务的任务处理节点对;基于任务处理节点对,针对关联数据进行聚类,以便获得与任务处理节点对相关联的第一任务的数量;以及响应于确定第一任务的数量大于或者等于预定数量阈值,生成与任务处理节点对相关联的警示标识。
在一些实施例中,在候选任务处理节点对中确定用于处理调查事件任务的一个任务处理节点对包括:计算候选任务处理节点对所包括的两个任务处理节点的位置信息与目标位置信息之间的距离之和;按照距离之和递减的顺序,确定候选任务处理节点是否关联有警示标识;响应于确定候选任务处理节点未关联有警示标识,将与调查事件任务分配给候选任务处理节点对所包括的两个任务处理节点。
在一些实施例中,生成任务调度信息包括:基于与第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据;获取第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的处理数量和未成功完成率;基于与任务事件URI关联的第一任务的平均耗时数据、处理数量和未成功完成率,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均处理数量;以及基于平均处理数量和任务处理稳定度信息,计算与各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息,任务调度信息包括各个任务处理节点的执行效率信息和平均处理数量。
在一些实施例中,任务引擎基于多个待处理任务和历史任务调度信息生成用于分配多个待处理任务的任务列表包括:确认是否检测到空闲任务处理节点,空闲任务处理节点不存在尚未处理的第一任务;响应于确认检测到空闲任务处理节点,将多个待处理任务中的至少部分分配给空闲任务处理节点;以及响应于确认未检测到空闲任务处理节点,经由以下任一方式分配多个待处理任务:按照各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息递减的顺序排序各个任务处理节点,以便基于排序结果分配多个待处理任务;或者基于各个任务处理节点尚未处理的第一任务的数量和平均耗时数据,计算各个任务处理节点完成尚未处理的第一任务的预测耗时数据,以便基于预测耗时数据分配多个待处理任务。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
图1示出了根据本公开的实施例的用于实施调度任务的方法的系统的示意图。
图2示出了根据本公开的实施例的调度任务的方法的流程图。
图3示出了根据本公开的实施例的用于将任务分配任务处理节点对的方法的流程图。
图4示出了根据本公开的实施例的用于生成与任务处理节点对相关联的警示标识的方法的流程图。
图5示意性示出了适于用来实现本公开实施例的电子设备的框图。
在各个附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。
如前文所描述,传统用于调度任务的方案难以针对穿插有自动执行任务的多个任务进行合理的分配,并且无法有效地减少多个任务的整体处理耗时。
为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个,本公开的示例实施例提出了一种调度任务的方案。在本公开的方案中,通过流程引擎基于带有待处理任务的类别、任务处理节点的属性、任务事件URI信息的输入数据来创建任务,使得所创建的任务能够考虑任务处理节点的类型和任务的类型。另外,通过使得任务引擎基于待处理任务和历史任务调度信息来生成任务列表,以及基于对应消息而记录的与任务处理节点处的输入相关的第一任务的实际触发、暂停和输出处理时间来计算各任务处理节点的处理第一任务的平均耗时数据和执行效率信息,进而生成影响任务引擎进行任务分配的任务调度信息,本公开可以使得任务分配与各任务处理节点处理与用户输入相关的第一任务的实际执行效率以及平均耗时数据相关联。因此,本公开能够针对穿插有自动执行任务的多个任务进行合理的分配,利于减少多个任务的整体处理耗时。
图1示出了根据本公开的实施例的用于实施调度任务的方法的系统100的示意图。如图1所示,系统100包括:多个终端设备110(终端设备110例如包括第一终端设备110-1、第二终端设备110-2至第N终端设备110-N)、服务器130和网络150。
关于终端设备110,其用于处理待处理任务;以及确定是否检测到用户针对第一任务的触发、暂停或输出操作;如果确定检测到用户针对第一任务的触发、暂停或输出操作,分别向服务器130发送对应消息(例如包括用于指示第一任务被触发的第一消息、用于指示第一任务被暂停的第二消息和用于指示第一任务被输出或完成的第一消息)给任务引擎。终端设备110例如而不限于为个人计算机、移动设备。
关于服务器130,其用于基于输入数据创建多个待处理任务;基于多个待处理任务和历史任务调度信息来生成用于分配多个待处理任务的任务列表;基于来自终端设备110的对应消息记录第一任务的开始处理时间、暂停处理时间或者完成处理时间;计算计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息,以用于生成用以更新历史任务调度信息的任务调度信息;以及基于所生成的任务调度信息,更新历史任务调度信息。在一些实施例中,服务器130还用于呈现各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息。服务器130例如包括流程引擎132、任务引擎134、任务调度信息生成单元136和执行效率信息呈现单元138。
关于流程引擎132,其用于基于输入数据,创建多个待处理任务,以用于多个任务处理节点进行处理,输入数据至少包括待处理任务的类别、任务处理节点的属性、任务事件URI和与待处理任务相关联的源数据,多个待处理任务中的每一个待处理任务与任务事件URI相关联。
关于任务引擎134,其用于基于多个待处理任务和历史任务调度信息,生成用于分配多个待处理任务的任务列表,任务列表至少包括与任务处理节点处的输入操作相关的第一任务以及由任务处理节点自动执行的第二任务,任务处理节点包括多个分立的终端设备和终端设备集群任务引擎134还用于基于来自终端设备110的对应消息分别记录待处理任务的开始处理时间、暂停处理时间或者完成处理时间。
关于任务调度信息生成单元136,其用于基于与第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息,以用于生成用以更新历史任务调度信息的任务调度信息。
关于执行效率信息呈现单元138,其用于呈现各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息。
以下将结合图2描述根据本公开的实施例的调度任务的方法200。图2示出了根据本公开的实施例的调度任务的方法200的流程图。应当理解,方法200例如可以在图5所描述的电子设备500处执行。也可以在图1所描述的服务器130处执行。应当理解,方法200还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。
在步骤202处,服务器130的流程引擎基于输入数据,创建多个待处理任务,以用于多个任务处理节点进行处理,输入数据至少包括待处理任务的类别、任务处理节点的属性、任务事件URI和与待处理任务相关联的源数据,多个待处理任务中的每一个待处理任务与任务事件URI相关联。
关于任务事件URI,其例如用于标识与自动审批贷款的任务事件,任务事件包括申请贷款事件、调查事件、审核事件、贷款发放事件和逾期警示事件中的多个。
在步骤204处,服务器130的任务引擎基于多个待处理任务和历史任务调度信息,生成用于分配多个待处理任务的任务列表,任务列表至少包括与任务处理节点处的输入操作相关的第一任务以及由任务处理节点自动执行的第二任务,任务处理节点包括多个分立的终端设备和终端设备集群。
关于第一任务,其例如为与任务处理节点的用户操作相关的事件。
关于第二任务,其例如为第二任务例如为任务处理节点自动执行的系统事件。
关于生成用于分配多个待处理任务的任务列表的方式,其例如包括:服务器130确认是否检测到空闲任务处理节点,空闲任务处理节点不存在尚未处理的第一任务;响应于确认检测到空闲任务处理节点,将多个待处理任务中的至少部分分配给空闲任务处理节点;以及响应于确认未检测到空闲任务处理节点,经由以下任一方式分配多个待处理任务:按照各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息递减的顺序排序各个任务处理节点,以便基于排序结果分配多个待处理任务;或者基于各个任务处理节点尚未处理的第一任务的数量和平均耗时数据,计算各个任务处理节点完成尚未处理的第一任务的预测耗时数据,以便基于预测耗时数据分配多个待处理任务。
例如,服务器130的任务引擎如果确认检测到空闲任务处理节点,优先将当前待处理任务派给无积压任务的空闲任务处理节点。任务引擎如果未检测到空闲任务处理节点,即各任务处理节点均有积压任务,则基于各个任务处理节点尚未处理的第一任务的数量(积压任务数量)和平均耗时数据计算各各任务处理节点完成所有积压任务的耗时数据,以及优先将当前待处理任务分配给完成积压任务的耗时数据最短的任务处理节点。
在步骤206处,服务器130的任务引擎确定是否检测到关于任务处理节点针对第一任务的触发、暂停或输出的对应消息。如果服务器130的任务引擎确定未检测到关于任务处理节点针对第一任务的触发、暂停或输出的对应消息,继续执行步骤206。
在步骤208处,如果服务器130的任务引擎确定检测到关于任务处理节点针对第一任务的触发、暂停或输出的对应消息,基于对应消息分别记录待处理任务的开始处理时间、暂停处理时间或者完成处理时间。
例如,如果任务处理节点确定第一任务被触发(例如检测到针对第一任务的打开操作),则处理节点发送第一消息给任务引擎,任务引擎记录第一任务的开始处理时间。如果任务处理节点确定第一任务被暂停,则处理节点发送第二消息给任务引擎,以便任务引擎记录待处理任务的暂停持续时间。如果任务处理节点确定第一任务被结束(例如检测到任务处理节点提交关于第一任务的处理结果),则处理节点发送第三消息给任务引擎,以便任务引擎记录待处理任务的结束处理时间。
在步骤210处,服务器130基于与第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息,以用于生成用以更新历史任务调度信息的任务调度信息。
关于生成任务调度信息的方法,其例如包括:服务器130基于与第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据;获取第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的处理数量和未成功完成率;基于与任务事件URI关联的第一任务的平均耗时数据、处理数量和未成功完成率,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均处理数量;以及基于平均处理数量和任务处理稳定度信息,计算与各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息,任务调度信息包括各个任务处理节点的执行效率信息和平均处理数量。通过采用上述技术手段,本公开利于提高任务完成速度的高效和稳定。
关于计算第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据的方法,其例如包括:获取第三预定时间间隔内的各个任务处理节点所处理的与任务事件URI相关联的开始处理时间、暂停处理时间和完成处理时间,以便计算第三预定时间间隔内的各个任务处理节点所处理的与任务事件URI相关联的累积耗时时间;获取第三预定时间间隔内的各个任务处理节点所处理的与任务事件URI相关联的第一任务的数量;基于与任务事件URI相关联的第一任务的数量和累积耗时时间,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据。
其中,关于各任务处理节点所处理的与任务事件URI相关联的累积耗时时间的计算方式例如包括:针对每一个任务处理节点,利用每个第一任务的完成处理时间值减去开始处理时间值以便获得每个第一任务的跨度时间,然后再在每个第一任务的跨度时间中扣除对应的暂停持续时间,以便获得每个第一任务的耗时时间,然后将第三预定时间间隔内具有相同任务事件URI的第一任务的耗时时间进行累加,以获得该任务处理节点所处理的与任务事件URI相关联的累积耗时时间。
以下结合公式(1)说明用于计算各个任务处理节点处理与任务事件URI关联的第一任务的平均处理数量的方式。
N均= (N/T均)*(1-µ)(1)
在上述公式(1)中,T代表第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据。N代表第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的处理数量。µ代表第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的未成功完成率(例如所提交的输出或处理结果被驳回或者未被审批通过)。第三预定时间间隔例如而不限于是30天。
以下结合公式(2)和(3)说明用于计算与各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息的方式。
W=f(δ) (2)
在上述公式(2)和(3)中,W代表第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的任务处理稳定度信息。δ代表第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的处理数量标准差。Ni代表第三预定时间间隔内的第i个单位时间内的各个任务处理节点处理与任务事件URI关联的第一任务的处理数量,例如,第三预定时间间隔是30天,Ni代表第i天各个任务处理节点处理与任务事件URI关联的第一任务的处理数量。在一些实施例种,任务处理稳定度信息W可以为处理数量标准差δ的函数f(δ),即W=f(δ)。在一些实施例中,任务处理稳定度信息W可以等于处理数量标准差δ,即W=δ。
在上述方案中,通过流程引擎基于带有待处理任务的类别、任务处理节点的属性、任务事件URI信息的输入数据来创建任务,使得所创建的任务能够考虑任务处理节点的类型和任务的类型。另外,通过使得任务引擎基于待处理任务和历史任务调度信息来生成任务列表,以及基于对应消息而记录的与任务处理节点处的输入相关的第一任务的实际触发、暂停和输出处理时间来计算各任务处理节点的处理第一任务的平均耗时数据和执行效率信息,进而生成影响任务引擎进行任务分配的任务调度信息,本公开可以使得任务分配与各任务处理节点处理与用户输入相关的第一任务的实际执行效率以及平均耗时数据相关联。因此,本公开能够针对穿插有自动执行任务的多个任务进行合理的分配,利于减少多个任务的整体处理耗时。
在一实施例中,方法200还包括:响应于第一预定时间间隔达到,基于所生成的任务调度信息,更新历史任务调度信息;以及呈现各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息。通过呈现各个任务处理节点处理不同任务事件属性的任务的平均耗时数据和执行效率信息,利于优化任务分配的合理性。另外,通过第一预定时间间隔达到才更新历史任务调度信息,有利于维持任务分配策略的稳定性。在一些实施例中,第一预定时间间隔与调查事件任务的周期相关联。
以下将结合图3描述根据本公开的实施例的用于将任务分配任务处理节点对的方法300。图3示出了根据本公开的实施例的用于将任务分配任务处理节点对的方法300的流程图。应当理解,方法300例如可以在图5所描述的电子设备500处执行。也可以在图1所描述的服务器130处执行。应当理解,方法300还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。
在步骤302处,服务器130基于与第一任务关联的任务事件URI,确定第一任务是否为调查事件任务。如果确定第一任务不是调查事件任务,继续执行步骤302。
在步骤304处,如果服务器130确定第一任务为调查事件任务,获取多个任务处理节点的多个位置信息和调查对象的目标位置信息。
在步骤306处,服务器130分别计算多个任务处理节点的多个位置信息与目标位置信息之间的距离,以便在多个任务处理节点中选择距离小于预定距离阈值的一个或者多个任务处理节点对以作为候选任务处理节点对,每一个任务处理节点对包括两个任务处理节点。
在步骤308处,服务器130在候选任务处理节点对中确定用于处理调查事件任务的一个任务处理节点对。
关于在候选任务处理节点对中确定用于处理调查事件任务的一个任务处理节点对的方式例如包括:计算候选任务处理节点对所包括的两个任务处理节点的位置信息与目标位置信息之间的距离之和;按照距离之和递减的顺序,确定候选任务处理节点是否关联有警示标识;响应于确定候选任务处理节点未关联有警示标识,将与调查事件任务分配给候选任务处理节点对所包括的两个任务处理节点。通过采用上述技术手段,本公开可以避免将任务分配给频繁组合以执行调查事件的两个任务处理节点,以便保证两个任务处理节点执行调查事件任务的可靠地和彼此监督。
在上述方案中,本公开能够使得调查事件任务被优先分配给距离调查对象的目标位置较近的两个可靠的任务处理节点,以利于提高调查事件任务的高效率地和可靠地被执行。
以下将结合图4描述根据本公开的实施例的用于生成与任务处理节点对相关联的警示标识的方法400。图4示出了根据本公开的实施例的用于生成与任务处理节点对相关联的警示标识的方法400的流程图。应当理解,方法400例如可以在图5所描述的电子设备500处执行。也可以在图1所描述的服务器130处执行。应当理解,方法400还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。
在步骤402处,服务器130获取第二预定时间间隔内已被处理的、与调查事件任务相关联的第一任务的关联数据,关联数据至少包括处理第一任务的任务处理节点对。
在步骤404处,服务器130基于任务处理节点对,针对关联数据进行聚类,以便获得与任务处理节点对相关联的第一任务的数量。
在步骤406处,服务器130确定第一任务的数量是否大于或者等于预定数量阈值。
在步骤408处,如果服务器130确定第一任务的数量大于或者等于预定数量阈值,生成与任务处理节点对相关联的警示标识。如果服务器130确定第一任务的数量小于预定数量阈值,跳转至步骤410处,不生成与任务处理节点对相关联的警示标识。
通过采用上述技术手段,本公开可以标识频繁组合以执行调查事件的两个任务处理节点,以便于任务引擎及时调整调查事件的任务分配,进而有利于提高任务处理节点处理调查事件任务的可靠性。
图5示意性示出了适于用来实现本公开实施例的电子设备(或者计算设备)500的框图。设备500可以是用于实现执行图2至图4所示的方法200、300和400的设备。如图5所示,设备500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的计算机程序指令或者从存储单元508加载到随机存取存储器(RAM)503中的计算机程序指令,来执行各种适当的动作和处理。在RAM中,还可存储设备500操作所需的各种程序和数据。CPU、ROM以及RAM通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
设备500中的多个部件连接至输入/输出(I/O)505,包括:输入单元506、输出单元507、存储单元508,中央处理单元501执行上文所描述的各个方法和处理,例如执行方法200至500例如,在一些实施例中,方法200、300和400可被实现为计算机软件程序,其被存储于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到RAM并由CPU执行时,可以执行上文描述的方法200、300和400的一个或多个操作。备选地,在其他实施例中,CPU可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法200、300和400的一个或多个动作。
需要进一步说明的是,本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每一个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,该编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如C语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或步骤图描述了本公开的各个方面。应当理解,流程图和/或步骤图的每一个方步骤以及流程图和/或步骤图中各方步骤的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给语音交互装置中的处理器、通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或步骤图中的一个或多个方步骤中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或步骤图中的一个或多个方步骤中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或步骤图中的一个或多个方步骤中规定的功能/动作。
附图中的流程图和步骤图显示了根据本公开的多个实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或步骤图中的每一个方步骤可以代表一个模块、程序段或指令的一部分,该模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
以上仅为本公开的可选实施例,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种用于调度任务的方法,包括:
在服务器处,流程引擎基于输入数据,创建多个待处理任务,以用于多个任务处理节点进行处理,所述输入数据至少包括待处理任务的类别、任务处理节点的属性、任务事件URI和与待处理任务相关联的源数据,所述多个待处理任务中的每一个待处理任务与任务事件URI相关联;
任务引擎基于所述多个待处理任务和历史任务调度信息,生成用于分配所述多个待处理任务的任务列表,所述任务列表至少包括与任务处理节点处的输入操作相关的第一任务以及由任务处理节点自动执行的第二任务,所述任务处理节点包括多个分立的终端设备和终端设备集群;
响应于任务引擎确定检测到关于所述任务处理节点针对所述第一任务的触发操作、暂停操作或输出操作的对应消息,基于所述对应消息分别记录所述待处理任务的开始处理时间、暂停处理时间或者完成处理时间;以及
基于与所述第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息,以用于生成用以更新所述历史任务调度信息的任务调度信息。
2.根据权利要求1所述的方法,还包括:
响应于第一预定时间间隔达到,基于所生成的任务调度信息,更新所述历史任务调度信息;以及
呈现各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据和执行效率信息。
3.根据权利要求1所述的方法,其中所述第一任务为与任务处理节点的用户操作相关的事件,所述第二任务为任务处理节点自动执行的系统事件,所述任务事件URI用于标识与自动审批贷款相关联的任务事件,所述任务事件包括申请贷款事件、调查事件、审核事件、贷款发放事件和逾期警示事件中的多个。
4.根据权利要求1所述的方法,还包括:
基于与第一任务关联的任务事件URI,确定所述第一任务是否为调查事件任务;
响应于确定所述第一任务为调查事件任务,获取多个任务处理节点的多个位置信息和调查对象的目标位置信息;
分别计算多个任务处理节点的多个位置信息与目标位置信息之间的距离,以便在多个任务处理节点中选择所述距离小于预定距离阈值的一个或者多个任务处理节点对以作为候选任务处理节点对,每一个任务处理节点对包括两个任务处理节点;以及
在所述候选任务处理节点对中确定用于处理所述调查事件任务的一个任务处理节点对。
5.根据权利要求4所述的方法,还包括:
获取第二预定时间间隔内已被处理的、与调查事件任务相关联的第一任务的关联数据,所述关联数据至少包括处理所述第一任务的任务处理节点对;
基于所述任务处理节点对,针对所述关联数据进行聚类,以便获得与任务处理节点对相关联的第一任务的数量;以及
响应于确定所述第一任务的数量大于或者等于所述预定数量阈值,生成与所述任务处理节点对相关联的警示标识。
6.根据权利要求5所述的方法,其中在所述候选任务处理节点对中确定用于处理所述调查事件任务的一个任务处理节点对包括:
计算所述候选任务处理节点对所包括的两个任务处理节点的位置信息与目标位置信息之间的距离之和;
按照所述距离之和递减的顺序,确定所述候选任务处理节点是否关联有所述警示标识;
响应于确定所述候选任务处理节点未关联有所述警示标识,将与所述调查事件任务分配给所述候选任务处理节点对所包括的两个任务处理节点。
7.根据权利要求1所述的方法,其中生成任务调度信息包括:
基于与所述第一任务关联的任务事件URI、开始处理时间、暂停处理时间和完成处理时间,计算第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的平均耗时数据;
获取所述第三预定时间间隔内各个任务处理节点处理与任务事件URI关联的第一任务的处理数量和未成功完成率;
基于与任务事件URI关联的第一任务的平均耗时数据、处理数量和未成功完成率,计算各个任务处理节点处理与任务事件URI关联的第一任务的平均处理数量;以及
基于所述平均处理数量和任务处理稳定度信息,计算与各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息,所述任务调度信息包括各个任务处理节点的所述执行效率信息和平均处理数量。
8.根据权利要求7所述的方法,其中任务引擎基于所述多个待处理任务和历史任务调度信息生成用于分配所述多个待处理任务的任务列表包括:
确认是否检测到空闲任务处理节点,所述空闲任务处理节点不存在尚未处理的第一任务;
响应于确认检测到空闲任务处理节点,将所述多个待处理任务中的至少部分分配给所述空闲任务处理节点;以及
响应于确认未检测到空闲任务处理节点,经由以下任一方式分配所述多个待处理任务:
按照各个任务处理节点处理与任务事件URI关联的第一任务的执行效率信息递减的顺序排序各个任务处理节点,以便基于排序结果分配所述多个待处理任务;或者
基于各个任务处理节点尚未处理的第一任务的数量和所述平均耗时数据,计算各个任务处理节点完成尚未处理的第一任务的预测耗时数据,以便基于所述预测耗时数据分配所述多个待处理任务。
9.一种计算设备,包括:
至少一个处理单元;
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令当由所述至少一个处理单元执行时,使得所述计算设备执行权利要求1至8任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被机器执行时实现权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011601198.0A CN112286672B (zh) | 2020-12-30 | 2020-12-30 | 用于调度任务的方法、计算设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011601198.0A CN112286672B (zh) | 2020-12-30 | 2020-12-30 | 用于调度任务的方法、计算设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112286672A true CN112286672A (zh) | 2021-01-29 |
CN112286672B CN112286672B (zh) | 2021-05-07 |
Family
ID=74426353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011601198.0A Active CN112286672B (zh) | 2020-12-30 | 2020-12-30 | 用于调度任务的方法、计算设备和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112286672B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948387A (zh) * | 2021-03-04 | 2021-06-11 | 北京深演智能科技股份有限公司 | 数据处理方法、装置、存储介质及处理器 |
CN113191792A (zh) * | 2021-03-31 | 2021-07-30 | 北京达佳互联信息技术有限公司 | 任务的处理方法、装置、电子设备、存储介质和程序产品 |
CN113742075A (zh) * | 2021-09-07 | 2021-12-03 | 北京百度网讯科技有限公司 | 基于云端分布式系统的任务处理方法、装置及系统 |
CN114510329A (zh) * | 2022-01-21 | 2022-05-17 | 北京火山引擎科技有限公司 | 一种确定任务节点预计产出时间的方法、装置及设备 |
CN114862606A (zh) * | 2022-06-13 | 2022-08-05 | 新疆益盛鑫创展科技有限公司 | 一种基于云服务的保险信息处理方法、装置 |
CN115168016A (zh) * | 2022-09-07 | 2022-10-11 | 浙江大华技术股份有限公司 | 任务调度方法及相关装置、芯片、器件和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105955807A (zh) * | 2016-04-20 | 2016-09-21 | 上海瀚银信息技术有限公司 | 一种任务处理系统及方法 |
CN108681484A (zh) * | 2018-04-04 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 一种任务的分配方法、装置及设备 |
US20190004868A1 (en) * | 2017-07-01 | 2019-01-03 | TuSimple | System and method for distributed graphics processing unit (gpu) computation |
CN110532148A (zh) * | 2019-08-12 | 2019-12-03 | 北京金堤科技有限公司 | 微服务系统的监控方法及装置 |
CN111625331A (zh) * | 2020-05-20 | 2020-09-04 | 拉扎斯网络科技(上海)有限公司 | 任务调度方法、装置、平台、服务器及存储介质 |
-
2020
- 2020-12-30 CN CN202011601198.0A patent/CN112286672B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105955807A (zh) * | 2016-04-20 | 2016-09-21 | 上海瀚银信息技术有限公司 | 一种任务处理系统及方法 |
US20190004868A1 (en) * | 2017-07-01 | 2019-01-03 | TuSimple | System and method for distributed graphics processing unit (gpu) computation |
CN108681484A (zh) * | 2018-04-04 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 一种任务的分配方法、装置及设备 |
CN110532148A (zh) * | 2019-08-12 | 2019-12-03 | 北京金堤科技有限公司 | 微服务系统的监控方法及装置 |
CN111625331A (zh) * | 2020-05-20 | 2020-09-04 | 拉扎斯网络科技(上海)有限公司 | 任务调度方法、装置、平台、服务器及存储介质 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948387A (zh) * | 2021-03-04 | 2021-06-11 | 北京深演智能科技股份有限公司 | 数据处理方法、装置、存储介质及处理器 |
CN113191792A (zh) * | 2021-03-31 | 2021-07-30 | 北京达佳互联信息技术有限公司 | 任务的处理方法、装置、电子设备、存储介质和程序产品 |
CN113191792B (zh) * | 2021-03-31 | 2024-04-30 | 北京达佳互联信息技术有限公司 | 任务的处理方法、装置、电子设备、存储介质和程序产品 |
CN113742075A (zh) * | 2021-09-07 | 2021-12-03 | 北京百度网讯科技有限公司 | 基于云端分布式系统的任务处理方法、装置及系统 |
CN113742075B (zh) * | 2021-09-07 | 2024-04-09 | 北京百度网讯科技有限公司 | 基于云端分布式系统的任务处理方法、装置及系统 |
CN114510329A (zh) * | 2022-01-21 | 2022-05-17 | 北京火山引擎科技有限公司 | 一种确定任务节点预计产出时间的方法、装置及设备 |
CN114510329B (zh) * | 2022-01-21 | 2023-08-08 | 北京火山引擎科技有限公司 | 一种确定任务节点预计产出时间的方法、装置及设备 |
CN114862606A (zh) * | 2022-06-13 | 2022-08-05 | 新疆益盛鑫创展科技有限公司 | 一种基于云服务的保险信息处理方法、装置 |
CN114862606B (zh) * | 2022-06-13 | 2023-05-09 | 新疆益盛鑫创展科技有限公司 | 一种基于云服务的保险信息处理方法、装置 |
CN115168016A (zh) * | 2022-09-07 | 2022-10-11 | 浙江大华技术股份有限公司 | 任务调度方法及相关装置、芯片、器件和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112286672B (zh) | 2021-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112286672B (zh) | 用于调度任务的方法、计算设备和计算机存储介质 | |
US10929180B2 (en) | Task scheduling method, apparatus, electronic device and storage medium | |
EP3413247A1 (en) | Real-time intelligent and dynamic delivery scheduling | |
JP6127150B2 (ja) | ユーザに関連付けられている複数のデバイスに対する通知の送信 | |
US20150332195A1 (en) | Facilitating performance monitoring for periodically scheduled workflows | |
US10027743B2 (en) | Connection control device, connection control system, and non-transitory computer readable medium | |
US10977077B2 (en) | Computing node job assignment for distribution of scheduling operations | |
US10200237B1 (en) | Contextual state-based user interface notification triggering | |
CN109523187A (zh) | 任务调度方法、装置和设备 | |
CN110753112A (zh) | 云服务的弹性伸缩方法和装置 | |
CN109710394A (zh) | 定时任务处理系统及方法 | |
CN109033814B (zh) | 智能合约触发方法、装置、设备及存储介质 | |
CN106844055B (zh) | 一种任务的执行方法和装置 | |
CN109284180B (zh) | 一种任务调度方法、装置、电子设备及存储介质 | |
CN109144697B (zh) | 一种任务调度方法、装置、电子设备及存储介质 | |
CN108074164B (zh) | 订单处理方法和装置 | |
US20120158451A1 (en) | Dispatching Tasks in a Business Process Management System | |
US11150999B2 (en) | Method, device, and computer program product for scheduling backup jobs | |
JP2017530453A (ja) | ワークフロー実行におけるシステムリソースの平等シェアリング | |
CN110430142B (zh) | 用于控制流量的方法和装置 | |
CN112906206A (zh) | 数字孪生模型构建方法和装置 | |
CN110109741B (zh) | 循环任务的管理方法、装置、电子设备及存储介质 | |
US11188882B2 (en) | Scheduling business process | |
US20130031186A1 (en) | Systems and methods for secure message delivery to a transient recipient in a dynamically routed network | |
CN113312156A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |