通过配置可以快速清晰的理解 ElasticJob-Lite 所提供的功能。

本章节是 ElasticJob-Lite 的配置参考手册,需要时可当做字典查阅。

ElasticJob-Lite 提供了 3 种配置方式,用于不同的使用场景。

注册中心配置项

可配置属性

属性名类型缺省值描述
serverListsString连接 ZooKeeper 服务器的列表
namespaceStringZooKeeper 的命名空间
baseSleepTimeMillisecondsint1000等待重试的间隔时间的初始毫秒数
maxSleepTimeMillisecondsString3000等待重试的间隔时间的最大毫秒数
maxRetriesString3最大重试次数
sessionTimeoutMillisecondsboolean60000会话超时毫秒数
connectionTimeoutMillisecondsboolean15000连接超时毫秒数
digestString无需验证连接 ZooKeeper 的权限令牌

核心配置项说明

serverLists:

包括 IP 地址和端口号,多个地址用逗号分隔,如: host1:2181,host2:2181

作业配置项

可配置属性

属性名类型缺省值描述
jobNameString作业名称
shardingTotalCountint作业分片总数
cronStringCRON 表达式,用于控制作业触发时间
shardingItemParametersString个性化分片参数
jobParameterString作业自定义参数
monitorExecutionbooleantrue监控作业运行时状态
failoverbooleanfalse是否开启任务执行失效转移
misfirebooleantrue是否开启错过任务重新执行
maxTimeDiffSecondsint-1(不检查)最大允许的本机与注册中心的时间误差秒数
reconcileIntervalMinutesint10修复作业服务器不一致状态服务调度间隔分钟
jobShardingStrategyTypeStringAVG_ALLOCATION作业分片策略类型
jobExecutorServiceHandlerTypeStringCPU作业线程池处理策略
jobErrorHandlerTypeString作业错误处理策略
descriptionString作业描述信息
propsProperties作业属性配置信息
disabledbooleanfalse作业是否禁止启动
overwritebooleanfalse本地配置是否可覆盖注册中心配置

核心配置项说明

shardingItemParameters:

分片序列号和参数用等号分隔,多个键值对用逗号分隔。 分片序列号从0开始,不可大于或等于作业分片总数。 如:0=a,1=b,2=c

jobParameter:

可通过传递该参数为作业调度的业务方法传参,用于实现带参数的作业 例:每次获取的数据量、作业实例从数据库读取的主键等。

monitorExecution:

每次作业执行时间和间隔时间均非常短的情况,建议不监控作业运行时状态以提升效率。 因为是瞬时状态,所以无必要监控。请用户自行增加数据堆积监控。并且不能保证数据重复选取,应在作业中实现幂等性。 每次作业执行时间和间隔时间均较长的情况,建议监控作业运行时状态,可保证数据不会重复选取。

maxTimeDiffSeconds:

如果时间误差超过配置秒数则作业启动时将抛异常。

reconcileIntervalMinutes:

在分布式的场景下由于网络、时钟等原因,可能导致 ZooKeeper 的数据与真实运行的作业产生不一致,这种不一致通过正向的校验无法完全避免。 需要另外启动一个线程定时校验注册中心数据与真实作业状态的一致性,即维持 ElasticJob 的最终一致性。

配置为小于 1 的任意值表示不执行修复。

jobShardingStrategyType:

详情请参见内置分片策略列表

jobExecutorServiceHandlerType:

详情请参见内置线程池策略列表

jobErrorHandlerType:

详情请参见内置错误处理策略列表

props:

详情请参见作业属性配置列表

disabled:

可用于部署作业时,先禁止启动,部署结束后统一启动。

overwrite:

如果可覆盖,每次启动作业都以本地配置为准。

作业监听器配置项

常规监听器配置项

可配置属性:无

分布式监听器配置项

可配置属性

属性名类型缺省值描述
started-timeout-millisecondslongLong.MAX_VALUE最后一个作业执行前的执行方法的超时毫秒数
completed-timeout-millisecondslongLong.MAX_VALUE最后一个作业执行后的执行方法的超时毫秒数

事件追踪配置项

可配置属性

属性名类型缺省值描述
typeString事件追踪存储适配器类型
storage泛型事件追踪存储适配器对象