CN105117283A - 一种任务拆分方法及系统 - Google Patents
一种任务拆分方法及系统 Download PDFInfo
- Publication number
- CN105117283A CN105117283A CN201510529689.1A CN201510529689A CN105117283A CN 105117283 A CN105117283 A CN 105117283A CN 201510529689 A CN201510529689 A CN 201510529689A CN 105117283 A CN105117283 A CN 105117283A
- Authority
- CN
- China
- Prior art keywords
- task
- instances
- split
- unit
- template
- 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.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种任务拆分方法及系统,方法包括:当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。本发明中将复杂的大任务处理,根据动作分解为多个或关联或独立的子任务,能有效的减少作业耗时,并能够适用于各种无规则大任务处理,可拓展性高。
Description
技术领域
本发明涉及任务拆分技术领域,尤其涉及的是一种任务拆分方法及系统。
背景技术
一个作业由多个任务组成,普通系统通常是按照在一条线程中顺序执行作业中的任务,作业耗时等于该作业中所有任务耗时的总和。在碰到作业中有大数据量大且耗时长的任务时,使用运筹的思想改进系统,在多条线程并行执行多个任务,能有效的减少作业耗时。在这种情况下,耗时最长的任务决定了作业的最终耗时。
如果作业中一个任务的耗时超过作业中其他任务耗时之和,就会出现一条线程忙碌,其余线程被闲置的情况。此时,减少作业耗时的效果就打了折扣。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种任务拆分方法及系统,旨在解决现有技术中当作业中有一个任务的耗时超过作业中其他任务耗时之和,出现一条线程忙碌,其余线程被闲置,从而导致作业耗时的缺陷。
本发明的技术方案如下:
一种任务拆分方法,其中,所述方法包括以下步骤:
A、当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;
B、判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;
C、将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。
所述任务拆分方法,其中,所述步骤A具体包括:
A1、当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元;
A2、配置作业模板,并获取作业中任务单元的执行流程;
A3、获取已有作业模板,并判断该作业模板是否有效,当有效时则初始化对应的作业实例;
A4、根据作业模板中任务单元的执行流程,依次初始化任务实例。
所述任务拆分方法,其中,所述作业实例包括作业的有限期、控制类型、作业状态及执行周期。
所述任务拆分方法,其中,所述步骤A3中按指定周期定时获取已有作业模板,或通过socket通信实时触发获取已有作业模板。
一种任务拆分系统,其中,包括:
拆分模块,用于当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;
判断模块,用于判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;
任务执行模块,用于将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。
所述任务拆分系统,其中,所述拆分模块具体包括:
任务拆分单元,用于当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元;
配置单元,用于配置作业模板,并获取作业中任务单元的执行流程;
作业初始化单元,用于获取已有作业模板,并判断该作业模板是否有效,当有效时则初始化对应的作业实例;
任务初始化单元,用于根据作业模板中任务单元的执行流程,依次初始化任务实例。
所述任务拆分系统,其中,所述作业实例包括作业的有限期、控制类型、作业状态及执行周期。
所述任务拆分系统,其中,所述作业初始化单元中按指定周期定时获取已有作业模板,或通过socket通信实时触发获取已有作业模板。
本发明所述的一种任务拆分方法及系统,方法包括:当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。本发明中将复杂的大任务处理,根据动作分解为多个或关联或独立的子任务,能有效的减少作业耗时,并能够适用于各种无规则大任务处理,可拓展性高。
附图说明
图1为本发明所述任务拆分方法较佳实施例的流程图。
图2为本发明所述任务拆分系统较佳实施例的结构框图。
具体实施方式
本发明提供一种任务拆分方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,图1是本发明所述任务拆分方法较佳实施例的流程图。如图1所示,其包括以下步骤:
步骤S100、当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例。
本发明的实施例中,当智能终端中检测到作业进程时,则根据所述作业模板将作业进程拆分为多个任务单元。具体的,可根据任务执行流程的关键词将作业拆分,例如“备份数据”任务可以拆分成“导出文件”+“压缩文件”两个任务单元的组合,“装载数据文件”任务可拆分为“下载文件”+“解压文件”+“装载数据”三个任务单元的组合。当将作业进程拆分为多个任务单元后,则配置每一任务单元的执行流程,并依次初始化任务实例。
步骤S200、判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分。
当将作业拆分为任务实例后,若仍存在数量级别较大、执行耗时的任务实例,则继续对任务实例进行拆分,拆分成若干个相同的数据量级的子任务实例。这样,将数量级别较大的任务实例继续拆分后,有效的降低了该任务实例执行所需时间,进而减少了作业总耗时。
步骤S300、将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。
由于已将作业已拆分为多个任务实例,而且还进一步的将任务实例拆分为子任务实例,这样能充分利用线程池中的每一线程来执行任务,避免了大量进程被闲置的问题。
进一步的,所述步骤S100具体包括:
步骤S101、当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元;
步骤S102、配置作业模板,并获取作业中任务单元的执行流程;
步骤S103、获取已有作业模板,并判断该作业模板是否有效,当有效时则初始化对应的作业实例;
步骤S104、根据作业模板中任务单元的执行流程,依次初始化任务实例。
在步骤S103中,按指定周期定时获取已有作业模板,或通过socket通信实时触发获取已有作业模板。所述作业实例包括作业的有限期、控制类型、作业状态及执行周期。
可见,本发明将复杂的大任务拆分,根据动作分解为多个或关联或独立的子任务。原任务可以很复杂,任务的拆分个数可以根据其每个动作分解细化决定,能够适用于各种无规则大任务处理,可拓展性高。拆分过程由quartz定时触发,或WEB端实时触发,对WEB产生配置的作业模板进行拆分、调度、分发,起到负载均衡的作用。
基于上述方法实施例,本发明还提供一种任务拆分系统,如图2所示,其包括:
拆分模块100,用于当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;
判断模块200,用于判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;
任务执行模块300,用于将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。
进一步的,在所述任务拆分系统中,所述拆分模块100具体包括:
任务拆分单元,用于当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元;
配置单元,用于配置作业模板,并获取作业中任务单元的执行流程;
作业初始化单元,用于获取已有作业模板,并判断该作业模板是否有效,当有效时则初始化对应的作业实例;
任务初始化单元,用于根据作业模板中任务单元的执行流程,依次初始化任务实例。
进一步的,在所述任务拆分系统中,所述作业实例包括作业的有限期、控制类型、作业状态及执行周期。
进一步的,在所述任务拆分系统中,所述作业初始化单元中按指定周期定时获取已有作业模板,或通过socket通信实时触发获取已有作业模板。
综上所述,本发明所述的一种任务拆分方法及系统,方法包括:当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。本发明中将复杂的大任务处理,根据动作分解为多个或关联或独立的子任务,能有效的减少作业耗时,并能够适用于各种无规则大任务处理,可拓展性高。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (8)
1.一种任务拆分方法,其特征在于,所述方法包括以下步骤:
A、当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;
B、判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;
C、将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。
2.根据权利要求1所述任务拆分方法,其特征在于,所述步骤A具体包括:
A1、当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元;
A2、配置作业模板,并获取作业中任务单元的执行流程;
A3、获取已有作业模板,并判断该作业模板是否有效,当有效时则初始化对应的作业实例;
A4、根据作业模板中任务单元的执行流程,依次初始化任务实例。
3.根据权利要求2所述任务拆分方法,其特征在于,所述作业实例包括作业的有限期、控制类型、作业状态及执行周期。
4.根据权利要求2所述任务拆分方法,其特征在于,所述步骤A3中按指定周期定时获取已有作业模板,或通过socket通信实时触发获取已有作业模板。
5.一种任务拆分系统,其特征在于,包括:
拆分模块,用于当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元,配置每一任务单元的执行流程,并依次初始化任务实例;
判断模块,用于判断任务实例的数量级别是否超出预先设定的任务数量阈值,当超出时则将任务实例拆分为指定数量的子任务实例,当未超出时则不拆分;
任务执行模块,用于将所述任务实例或所述子任务实例放入任务池中执行,直至执行完毕。
6.根据权利要求5所述任务拆分系统,其特征在于,所述拆分模块具体包括:
任务拆分单元,用于当检测到作业进程时,根据预设的作业模板将作业进程拆分为多个任务单元;
配置单元,用于配置作业模板,并获取作业中任务单元的执行流程;
作业初始化单元,用于获取已有作业模板,并判断该作业模板是否有效,当有效时则初始化对应的作业实例;
任务初始化单元,用于根据作业模板中任务单元的执行流程,依次初始化任务实例。
7.根据权利要求6所述任务拆分系统,其特征在于,所述作业实例包括作业的有限期、控制类型、作业状态及执行周期。
8.根据权利要求6所述任务拆分系统,其特征在于,所述作业初始化单元中按指定周期定时获取已有作业模板,或通过socket通信实时触发获取已有作业模板。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510529689.1A CN105117283A (zh) | 2015-08-26 | 2015-08-26 | 一种任务拆分方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510529689.1A CN105117283A (zh) | 2015-08-26 | 2015-08-26 | 一种任务拆分方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105117283A true CN105117283A (zh) | 2015-12-02 |
Family
ID=54665284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510529689.1A Pending CN105117283A (zh) | 2015-08-26 | 2015-08-26 | 一种任务拆分方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105117283A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779439A (zh) * | 2016-12-27 | 2017-05-31 | 苏州思杰马克丁软件有限公司 | 一种任务分发方法及装置 |
CN108804377A (zh) * | 2018-04-24 | 2018-11-13 | 桂林长海发展有限责任公司 | 一种总线任务处理方法及系统 |
WO2019019381A1 (zh) * | 2017-07-25 | 2019-01-31 | 平安科技(深圳)有限公司 | 批量处理保单任务的方法、装置、计算机设备及存储介质 |
CN111158884A (zh) * | 2019-12-31 | 2020-05-15 | 深圳云天励飞技术有限公司 | 一种数据分析方法、装置、电子设备及存储介质 |
CN111452052A (zh) * | 2020-05-14 | 2020-07-28 | 东南大学 | 一种档案用机器人的导航定位与任务规划方法 |
CN111796936A (zh) * | 2020-06-29 | 2020-10-20 | 平安普惠企业管理有限公司 | 请求处理方法、装置、电子设备及介质 |
CN112596774A (zh) * | 2020-11-17 | 2021-04-02 | 新华三大数据技术有限公司 | 一种实例化软件管理方法及装置 |
CN112734222A (zh) * | 2021-01-06 | 2021-04-30 | 成都星云智联科技有限公司 | 一种工厂订单生产排程自适应方法、设备及存储介质 |
US11029893B2 (en) * | 2017-09-08 | 2021-06-08 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and controller, controller and operating method of nonvolatile memory device |
CN117194048A (zh) * | 2023-04-13 | 2023-12-08 | 山东华科信息技术有限公司 | 用于业务数据的协同方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063329A (zh) * | 2010-12-22 | 2011-05-18 | 北京邮电大学 | 基于多代理协作的管理任务动态分解方法及系统 |
WO2013021223A1 (en) * | 2011-08-05 | 2013-02-14 | Intel Corporation | Method and system for work partitioning between processors with work demand feedback |
CN103942098A (zh) * | 2014-04-29 | 2014-07-23 | 国家电网公司 | 一种任务处理系统和方法 |
CN104252472A (zh) * | 2013-06-27 | 2014-12-31 | 国际商业机器公司 | 用于并行化数据处理的方法和装置 |
-
2015
- 2015-08-26 CN CN201510529689.1A patent/CN105117283A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063329A (zh) * | 2010-12-22 | 2011-05-18 | 北京邮电大学 | 基于多代理协作的管理任务动态分解方法及系统 |
WO2013021223A1 (en) * | 2011-08-05 | 2013-02-14 | Intel Corporation | Method and system for work partitioning between processors with work demand feedback |
CN104252472A (zh) * | 2013-06-27 | 2014-12-31 | 国际商业机器公司 | 用于并行化数据处理的方法和装置 |
CN103942098A (zh) * | 2014-04-29 | 2014-07-23 | 国家电网公司 | 一种任务处理系统和方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779439A (zh) * | 2016-12-27 | 2017-05-31 | 苏州思杰马克丁软件有限公司 | 一种任务分发方法及装置 |
WO2019019381A1 (zh) * | 2017-07-25 | 2019-01-31 | 平安科技(深圳)有限公司 | 批量处理保单任务的方法、装置、计算机设备及存储介质 |
US11029893B2 (en) * | 2017-09-08 | 2021-06-08 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and controller, controller and operating method of nonvolatile memory device |
US11693605B2 (en) | 2017-09-08 | 2023-07-04 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and controller, controller and operating method of nonvolatile memory device |
CN108804377A (zh) * | 2018-04-24 | 2018-11-13 | 桂林长海发展有限责任公司 | 一种总线任务处理方法及系统 |
CN111158884A (zh) * | 2019-12-31 | 2020-05-15 | 深圳云天励飞技术有限公司 | 一种数据分析方法、装置、电子设备及存储介质 |
CN111452052B (zh) * | 2020-05-14 | 2022-03-29 | 东南大学 | 一种档案用机器人的导航定位与任务规划方法 |
CN111452052A (zh) * | 2020-05-14 | 2020-07-28 | 东南大学 | 一种档案用机器人的导航定位与任务规划方法 |
CN111796936A (zh) * | 2020-06-29 | 2020-10-20 | 平安普惠企业管理有限公司 | 请求处理方法、装置、电子设备及介质 |
CN112596774A (zh) * | 2020-11-17 | 2021-04-02 | 新华三大数据技术有限公司 | 一种实例化软件管理方法及装置 |
CN112596774B (zh) * | 2020-11-17 | 2022-04-01 | 新华三大数据技术有限公司 | 一种实例化软件管理方法及装置 |
CN112734222A (zh) * | 2021-01-06 | 2021-04-30 | 成都星云智联科技有限公司 | 一种工厂订单生产排程自适应方法、设备及存储介质 |
CN117194048A (zh) * | 2023-04-13 | 2023-12-08 | 山东华科信息技术有限公司 | 用于业务数据的协同方法 |
CN117194048B (zh) * | 2023-04-13 | 2024-04-09 | 山东华科信息技术有限公司 | 用于业务数据的协同方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105117283A (zh) | 一种任务拆分方法及系统 | |
CN101258469B (zh) | 信息处理设备 | |
CN103412786A (zh) | 一种高性能服务器架构系统及数据处理方法 | |
CN107797853B (zh) | 一种任务调度方法、装置及多核处理器 | |
RU2697700C2 (ru) | Равноправное разделение системных ресурсов в исполнении рабочего процесса | |
WO2007126837A3 (en) | Managing execution of programs by multiple computing systems | |
CN104253850A (zh) | 一种任务分布式调度方法和系统 | |
CN101464810A (zh) | 服务程序处理方法及服务器 | |
CN104468407A (zh) | 实现业务平台资源弹性分配的方法与装置 | |
CN104536827A (zh) | 一种数据调度方法和装置 | |
CN106776395B (zh) | 一种共享集群的任务调度方法及装置 | |
CN104850491B (zh) | 一种软件测试方法、设备及系统 | |
CN107291550A (zh) | 一种针对迭代应用的Spark平台资源动态分配方法及系统 | |
CN104820618A (zh) | 一种任务调度方法、任务调度装置及多核系统 | |
CN103257896A (zh) | 一种云环境下的Max-D作业调度方法 | |
CN110134533B (zh) | 一种可批量调度数据的系统及方法 | |
CN105446812A (zh) | 一种多任务调度配置方法 | |
CN113986497B (zh) | 基于多租户技术的队列调度方法、装置及系统 | |
CN103685492A (zh) | Hadoop集群系统的调度方法、调度装置及其应用 | |
CN109889406B (zh) | 用于管理网络连接的方法、装置、设备和存储介质 | |
CN109697105A (zh) | 一种容器云环境物理机选择方法及其系统、虚拟资源配置方法及迁移方法 | |
CN106874129B (zh) | 一种操作系统进程调度顺序确定方法及控制方法 | |
CN106155796A (zh) | 一种基于队列的线程调度方法及装置 | |
GB2582513A (en) | Automatic diagonal scaling of workloads in a distributed computing environment | |
Azmi et al. | Scheduling grid jobs using priority rule algorithms and gap filling techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151202 |