lastic job源码分析 - 作业配置

elastic job的作业配置由3级组成:作业核心配置,作业类型配置和作业根配置。它们的关系是作业根配置包含作业类型配置,作业类型配置包含作业核心配置。elastic job提供了3种作业类型:简单作业类型,数据流作业类型和脚本作业类型。它们之间的类图如下图:


lastic job源码分析 - 作业配置_第1张图片
作业配置类图

作业核心配置

lastic job源码分析 - 作业配置_第2张图片
作业核心配置

作业核心配置 JobCoreConfiguration主要用于配置作业名称、执行周期、作业分片项等数据。详情如下:

属性 缺省值 描述
jobName null 作业名称
cron null 作业启动时间的cron表达式
shardingTotalCount 0 作业分片总数
shardingItemParameters "" 分片序列号和个性化参数对照表(0=a,1=b,2=c)
jobParameter "" 作业自定义参数
failover false 是否开启失效转移
misfire true 是否开启misfire
description "" 作业描述信息
jobProperties 初始对象 作业属性

作业类型配置

作业类型配置包含3个属性:作业类型JobType,作业实现类jobClass以及作业核心配置JobCoreConfiguration

lastic job源码分析 - 作业配置_第3张图片
作业类型配置

简单作业配置

简单作业类型的作业类型为JobType.SIMPLE,作业实现类为实现SimpleJob接口的类。

数据流作业配置

数据流作业类型的作业类型为JobType.DATAFLOW,作业实现类为实现DataflowJob接口的类。该配置还包含一个属性streamingProcess(是否流式处理数据)。如果流式处理数据, 则fetchData不返回空结果将持续执行作业,如果非流式处理数据, 则处理数据完成后作业结束。

脚本作业配置

脚本作业类型的作业类型为JobType.SCRIPT,作业实现类为ScriptJob,以及scriptCommandLine(脚本型作业执行命令行)。

作业根配置

作业根配置在elastic job lite中只有一个实现LiteJobConfiguration

lastic job源码分析 - 作业配置_第4张图片
LiteJobConfiguration

具体属性介绍如下:

属性 缺省值 描述
monitorExecution true 是否监控作业执行时状态
maxTimeDiffSeconds -1 最大容忍的本机与注册中心的时间误差秒数(默认不校验)
monitorPort -1 作业辅助监控端口(默认不开启)
jobShardingStrategyClass "" 作业分片策略实现类全路径
reconcileIntervalMinutes 10 修复作业服务器不一致状态服务执行间隔分钟数
disabled false 作业是否启动时禁止
overwrite false 本地配置是否可覆盖注册中心配置

你可能感兴趣的:(lastic job源码分析 - 作业配置)