任务管理
本文介绍如何在任务管理页面对调度任务进行一系列操作步骤的详解。
创建调度任务
创建任务前,请确保您已经创建了任务分组。更多信息,请参见应用管理。
- 登录分布式任务调度平台。
在顶部菜单栏选择地域。
在左侧导航栏,选择任务管理。
在任务管理页面,选择所属命名空间,单击创建任务。在基本配置向导页,配置调度任务的相关信息,然后单击下一步。
基本配置参数说明如下:
配置名称
说明
任务名
自定义任务名称。
描述
任务描述,尽量简洁地描述业务,便于后续搜索。
应用ID
任务所属分组。可以在下拉列表中选择。
任务类型
指任务所实现的语言,当前支持java、xxljob、springschedule、golang、脚本任务、http和dataworks类型。选择脚本任务时,需选择脚本语言:shell、python或go,您可以在编辑框中编写任务脚本。
Class全路径
说明仅任务类型选择java时出现。
JobProcessor的全路径,例如
xxx.xxx.xxx.HelloProcessor
。执行模式
执行模式,这里特指任务执行的模式,当前支持以下模式。
单机运行:随机选一台机器执行。
广播运行:所有机器同时执行并等待全部结束。
可视化MapReduce:Map模型,子任务300以下,有子任务列表。
专业版可支持至1,000以下,且支持业务关键字查询。
MapReduce:属于常规MapReduce模型任务,能支持超大数量的子任务并行处理,仅可查询子任务运行汇总信息,建议子任务100W以下时选择。
分片运行:类似elastic-job模型,配置分片参数,可以将分片平均分给多个客户端执行。支持多语言版本。
说明当选择不同执行模式后,高级设置中的参数会随之变化。
任务参数
任意字符串,可以在运行时通过上下文获取。
高级配置参数说明如下:
参数
适用的执行模式
解释
默认值
任务失败重试次数
通用
任务运行失败自动重试的次数。
说明正在执行任务的机器重启,任务会变成失败状态,如果想立即重跑,可以配置该参数。
0
任务失败重试间隔
通用
每次失败重试的间隔。单位:秒。
30
任务并发数
通用
同一个Job同一时间运行的实例个数。1表示不允许重复执行。
1
清理策略
通用
任务执行历史记录的清理策略。
保留最近N条
保留记录数
通用
任务历史执行记录的保留记录数。
300条
子任务单机并发数
可视化MapReduce
MapReduce
分片运行
分布式模型,单台机器并发消费子任务的个数。
5
子任务失败重试次数
可视化MapReduce
MapReduce
分片运行
分布式模型,子任务失败自动重试的次数。
0
子任务失败重试间隔
可视化MapReduce
MapReduce
分片运行
分布式模型,子任务失败自动重试的间隔。单位:秒。
0
子任务分发方式
可视化MapReduce
MapReduce
分片运行
推模型:每台机器平均分配子任务。
拉模型: 每台机器主动拉取子任务,没有木桶效应。拉取过程中,所有子任务会缓存在Master节点,对内存有压力,建议子任务数不超过10,000。
推模型
子任务单次拉取数(仅适用于拉模型)
可视化MapReduce
MapReduce
分片运行
Slave节点每次向Master节点拉取多少个子任务。
5
子任务队列容量(仅适用于拉模型)
可视化MapReduce
MapReduce
分片运行
Slave节点缓存子任务的队列大小。
10
子任务全局并发数(仅适用于拉模型)
可视化MapReduce
MapReduce
分片运行
分布式拉模型支持全局子任务并发数,可以进行限流。
1,000
在定时配置配置向导页,设置定时参数和高级配置参数,然后单击下一步。
定时参数说明如下:
配置项
说明
时间类型
none:无调度方式,一般通过工作流触发。
cron:Cron表达式。
api:通过API触发。
fixed_rate:固定频率。
second_delay:秒级固定延迟。
onetime:一次性任务。
unix cron:unix系统下的cron表达式。
cron表达式(仅适用于cron时间类型)
填写Cron表达式。可以直接按照Cron语法填写,也可以使用工具生成并验证。
固定频率(仅适用于fixed_rate时间类型)
填写固定频率,单位为秒,只支持60秒以上。例如200表示每200s调度一次。
固定延迟(仅适用于second_delay时间类型)
填写固定延迟,单位为秒。范围为1秒~60秒。例如5表示延迟5秒触发调度。
调度时间(仅适用于onetime时间类型)
填写任务指定的执行时间。例如:
2023-7-13 00:00:00
。unix cron表达式(仅适用于unix cron时间类型)
填写unix系统格式的cron表达式。
高级配置参数说明如下:
配置项
说明
时间偏移
数据时间相对于调度时间的偏移,可以在调度时从上下文获取该值。
时区
可以根据实际情况选择不同时区,包括一些常用国家或地区,也包括标准的GMT表达方式。
在通知配置配置向导页,设置报警参数及联系人,然后单击完成。
通知渠道及联系人目前支持应用分组联系人、自定义。
应用分组联系人
应用分组联系人下所有联系人都可接收到通知。
自定义
自定义中通知方式支持联系人组、联系人两种方式。
联系人组
联系人组下所有联系人都可以接收到通知。关于创建联系人组,请参见创建通知联系人或通知联系人组。
联系人
1.添加通知联系人,添加的联系人可以接收到通知。支持设置多个通知联系人。添加联系人后,单击前往创建联系人。
2.在弹出页面中单击新建联系人,然后输入联系人信息。
返回任务管理页面,查看刚才创建的任务是否已存在,且参数是否和配置一致。
说明调度任务创建完成后,默认为启用状态。您也可以根据实际情况禁用、再启用该任务。具体操作,请参见启用和禁用调度任务。
编辑调度任务
在任务管理页面,单击目标任务的操作列下的编辑。
在编辑面板,设置基本配置、定时配置和报警配置参数。
说明任务分组和任务类型在编辑时不可修改。其它参数配置规则和创建调度任务时一致。
执行调度任务
在任务管理页面任务列表的操作列下单击运行一次,可以执行一次该调度任务。
启用和禁用调度任务
单个调度任务启用和禁用
在任务管理页面,单击目标任务操作列下的更多,然后选择禁用或者启用。
在确认对话框中单击确认。
批量启用和禁用调度任务
如果是专业版应用,您可以批量启用和禁用调度任务。在任务管理页面,勾选目标任务,然后单击任务列表下方的批量禁用或批量启用。
复制调度任务
在任务管理页面,单击目标任务操作列下的更多>复制。可以复制该调度任务的配置,您可以编辑复制的任务,生成新的调度任务。
重刷调度任务
如果您的业务发生变更,如数据库增加一个字段或者上一个月数据有错误,需要把过去一段时间的任务重新执行一遍,可以重刷调度任务数据。
任务和工作流都支持重刷数据(只支持天级别的调度周期)。
如果您之前执行的某个调度任务的数据出现偏差或遗漏,您可以通过重新设置执行参数并执行某个调度任务属性、获取数据。
- 登录分布式任务调度平台。
在任务管理页面,单击目标任务操作列下的更多,然后单击重刷任务。
在重刷任务面板,设置起止日期和数据时间,单击确定。
起止日期:指定重刷的日期区间。
数据时间:指定重刷日期区间内的重刷时间。
示例重刷配置如下:
当前时间为2019-01-01 10:00:00。
重刷任务的起止日期为2018-10-01~2018-10-07,默认从2018年10月1日00:00:00起,到2018年10月7日23:59:59结束。
数据时间为11:11:11。
则该任务会被重刷7次,生成7个实例。
序号
调度时间
数据时间
1
2019.1.1 10:00:00
2018.10.1 11:11:11
2
2019.1.1 10:00:00
2018.10.2 11:11:11
3
2019.1.1 10:00:00
2018.10.3 11:11:11
4
2019.1.1 10:00:00
2018.10.4 11:11:11
5
2019.1.1 10:00:00
2018.10.5 11:11:11
6
2019.1.1 10:00:00
2018.10.6 11:11:11
7
2019.1.1 10:00:00
2018.10.7 11:11:11
查看调度任务的执行记录和操作记录
查看执行记录:在任务管理页面,单击目标任务操作列下的更多>历史记录,查看该调度任务的执行记录。
查看操作记录:在任务管理页面,单击目标任务操作列下的更多>操作记录,查看该调度任务的管理操作记录。
删除调度任务
在任务管理页面,单击目标任务操作列下的更多>删除。
在弹出的确认对话框中单击确认。
导入或导出任务
在任务管理页面,选择应用(专业版的应用)。
单击导入任务或者导出任务即可。