您好!
欢迎来到京东云开发者社区
登录
首页
博文
课程
大赛
工具
用户中心
开源
首页
博文
课程
大赛
工具
开源
更多
用户中心
开发者社区
>
博文
>
ElasticJob-Lite配置手册(上)
分享
打开微信扫码分享
点击前往QQ分享
点击前往微博分享
点击复制链接
ElasticJob-Lite配置手册(上)
Apache ShardingSphere
2021-01-27
IP归属:未知
24560浏览
# 概述 通过配置可以快速清晰的理解 ElasticJob-Lite 所提供的功能。 本章节是 ElasticJob-Lite 的配置参考手册,需要时可当做字典查阅。 ElasticJob-Lite 提供了 3 种配置方式,用于不同的使用场景。 ## 注册中心配置项 ### 可配置属性 | 属性名 | 类型 | 缺省值 | 描述 | | ----------------------------- |:-------- |:------- |:-------------------------- | | serverLists | String | | 连接 ZooKeeper 服务器的列表 | | namespace | String | | ZooKeeper 的命名空间 | | baseSleepTimeMilliseconds | int | 1000 | 等待重试的间隔时间的初始毫秒数 | | maxSleepTimeMilliseconds | String | 3000 | 等待重试的间隔时间的最大毫秒数 | | maxRetries | String | 3 | 最大重试次数 | | sessionTimeoutMilliseconds | boolean | 60000 | 会话超时毫秒数 | | connectionTimeoutMilliseconds | boolean | 15000 | 连接超时毫秒数 | | digest | String | 无需验证 | 连接 ZooKeeper 的权限令牌 | ### 核心配置项说明 **serverLists:** 包括 IP 地址和端口号,多个地址用逗号分隔,如: host1:2181,host2:2181 ## 作业配置项 ### 可配置属性 | 属性名 | 类型 | 缺省值 | 描述 | | ----------------------------- |:---------- |:-------------- |:----------------------------------- | | jobName | String | | 作业名称 | | shardingTotalCount | int | | 作业分片总数 | | cron | String | | CRON 表达式,用于控制作业触发时间 | | shardingItemParameters | String | | 个性化分片参数 | | jobParameter | String | | 作业自定义参数 | | monitorExecution | boolean | true | 监控作业运行时状态 | | failover | boolean | false | 是否开启任务执行失效转移 | | misfire | boolean | true | 是否开启错过任务重新执行 | | maxTimeDiffSeconds | int | -1(不检查) | 最大允许的本机与注册中心的时间误差秒数 | | reconcileIntervalMinutes | int | 10 | 修复作业服务器不一致状态服务调度间隔分钟 | | jobShardingStrategyType | String | AVG_ALLOCATION | 作业分片策略类型 | | jobExecutorServiceHandlerType | String | CPU | 作业线程池处理策略 | | jobErrorHandlerType | String | | 作业错误处理策略 | | description | String | | 作业描述信息 | | props | Properties | | 作业属性配置信息 | | disabled | boolean | false | 作业是否禁止启动 | | overwrite | boolean | false | 本地配置是否可覆盖注册中心配置 | ### 核心配置项说明 **shardingItemParameters:** 分片序列号和参数用等号分隔,多个键值对用逗号分隔。 分片序列号从0开始,不可大于或等于作业分片总数。 如:0=a,1=b,2=c **jobParameter:** 可通过传递该参数为作业调度的业务方法传参,用于实现带参数的作业 例:每次获取的数据量、作业实例从数据库读取的主键等。 **monitorExecution:** 每次作业执行时间和间隔时间均非常短的情况,建议不监控作业运行时状态以提升效率。 因为是瞬时状态,所以无必要监控。请用户自行增加数据堆积监控。并且不能保证数据重复选取,应在作业中实现幂等性。 每次作业执行时间和间隔时间均较长的情况,建议监控作业运行时状态,可保证数据不会重复选取。 **failover:** 需要与 monitorExecution 同时开启才可生效。 **maxTimeDiffSeconds:** 如果时间误差超过配置秒数则作业启动时将抛异常。 **reconcileIntervalMinutes:** 在分布式的场景下由于网络、时钟等原因,可能导致 ZooKeeper 的数据与真实运行的作业产生不一致,这种不一致通过正向的校验无法完全避免。 需要另外启动一个线程定时校验注册中心数据与真实作业状态的一致性,即维持 ElasticJob 的最终一致性。 配置为小于 1 的任意值表示不执行修复。 **jobShardingStrategyType:** 详情请参见[内置分片策略列表](/cn/user-manual/elasticjob-lite/configuration/built-in-strategy/sharding)。 **jobExecutorServiceHandlerType:** 详情请参见[内置线程池策略列表](/cn/user-manual/elasticjob-lite/configuration/built-in-strategy/thread-pool)。 **jobErrorHandlerType:** 详情请参见[内置错误处理策略列表](/cn/user-manual/elasticjob-lite/configuration/built-in-strategy/error-handler)。 **props:** 详情请参见[作业属性配置列表](/cn/user-manual/elasticjob-lite/configuration/props)。 **disabled:** 可用于部署作业时,先禁止启动,部署结束后统一启动。 **overwrite:** 如果可覆盖,每次启动作业都以本地配置为准。 ## 作业监听器配置项 ### 常规监听器配置项 可配置属性:无 ### 分布式监听器配置项 可配置属性 | 属性名 | 类型 | 缺省值 | 描述 | | ------------------------------ |:------- |:-------------- |:---------------------------------- | | started-timeout-milliseconds | long | Long.MAX_VALUE | 最后一个作业执行前的执行方法的超时毫秒数 | | completed-timeout-milliseconds | long | Long.MAX_VALUE | 最后一个作业执行后的执行方法的超时毫秒数 | ## 事件追踪配置项 ### 可配置属性 | 属性名 | 类型 | 缺省值 | 描述 | | ------- |:------- |:----- |:------------------- | | type | String | | 事件追踪存储适配器类型 | | storage | 泛型 | | 事件追踪存储适配器对象 | # Java API ## 注册中心配置 用于注册和协调作业分布式行为的组件,目前仅支持 ZooKeeper。 类名称:org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperConfiguration 可配置属性: | 属性名 | 构造器注入 | | ----------------------------- |:--------- | | serverLists | 是 | | namespace | 是 | | baseSleepTimeMilliseconds | 否 | | maxSleepTimeMilliseconds | 否 | | maxRetries | 否 | | sessionTimeoutMilliseconds | 否 | | connectionTimeoutMilliseconds | 否 | | digest | 否 | ## 作业配置 类名称:org.apache.shardingsphere.elasticjob.api.JobConfiguration 可配置属性: | 属性名 | 构造器注入 | | ----------------------------- |:--------- | | jobName | 是 | | shardingTotalCount | 是 | | cron | 否 | | shardingItemParameters | 否 | | jobParameter | 否 | | monitorExecution | 否 | | failover | 否 | | misfire | 否 | | maxTimeDiffSeconds | 否 | | reconcileIntervalMinutes | 否 | | jobShardingStrategyType | 否 | | jobExecutorServiceHandlerType | 否 | | jobErrorHandlerType | 否 | | jobListenerTypes | 否 | | description | 否 | | props | 否 | | disabled | 否 | | overwrite | 否 | # 作业属性配置 ## 简介 ElasticJob 提供属性配置的方式为不同类型的作业提供定制化配置。 ## 作业类型 ### 简单作业 接口名称:org.apache.shardingsphere.elasticjob.simple.job.SimpleJob 可配置属性:无 ### 数据流作业 接口名称:org.apache.shardingsphere.elasticjob.dataflow.job.DataflowJob 可配置属性: | *名称* | *数据类型* | *说明* | *默认值* | | ----------------- | ----------- | -------------- | -------- | | streaming.process | boolean | 是否开启流式处理 | false | ### 脚本作业 类型:SCRIPT 可配置属性: | *名称* | *数据类型* | *说明* | *默认值* | | ------------------- | ----------- | ---------------- | -------- | | script.command.line | String | 脚本内容或运行路径 | - | ### HTTP作业 类型:HTTP 可配置属性: | *名称* | *数据类型* | *说明* | *默认值* | | ----------------------------------- | ----------- | ------------------ | -------- | | http.url | String | http请求url | - | | http.method | String | http请求方法 | - | | http.data | String | http请求数据 | - | | http.connect.timeout.milliseconds | String | http连接超时 | 3000 | | http.read.timeout.milliseconds | String | http读超时 | 5000 | | http.content.type | String | http请求ContentType | - | # 作业属性配置 ## 简介 ElasticJob 提供属性配置的方式为不同类型的作业提供定制化配置。 ## 作业类型 ### 简单作业 接口名称:org.apache.shardingsphere.elasticjob.simple.job.SimpleJob 可配置属性:无 ### 数据流作业 接口名称:org.apache.shardingsphere.elasticjob.dataflow.job.DataflowJob 可配置属性: | *名称* | *数据类型* | *说明* | *默认值* | | ----------------- | ----------- | -------------- | -------- | | streaming.process | boolean | 是否开启流式处理 | false | ### 脚本作业 类型:SCRIPT 可配置属性: | *名称* | *数据类型* | *说明* | *默认值* | | ------------------- | ----------- | ---------------- | -------- | | script.command.line | String | 脚本内容或运行路径 | - | ### HTTP作业 类型:HTTP 可配置属性: | *名称* | *数据类型* | *说明* | *默认值* | | ----------------------------------- | ----------- | ------------------ | -------- | | http.url | String | http请求url | - | | http.method | String | http请求方法 | - | | http.data | String | http请求数据 | - | | http.connect.timeout.milliseconds | String | http连接超时 | 3000 | | http.read.timeout.milliseconds | String | http读超时 | 5000 | | http.content.type | String | http请求ContentType | - |
原创文章,需联系作者,授权转载
上一篇:ElasticJob-Lite配置手册(下)
下一篇:ElasticJob-Lite使用手册——事件追踪与操作API
Apache ShardingSphere
文章数
96
阅读量
231327
作者其他文章
01
突破关系型数据库桎梏:云原生数据库中间件核心剖析
数据库技术的发展与变革方兴未艾,NewSQL的出现,只是将各种所需技术组合在一起,而这些技术组合在一起所实现的核心功能,推动着云原生数据库的发展。 NewSQL的三种分类中,新架构和云数据库涉及了太多与数据库相关的底层实现,为了保证本文的范围不至太过发散,我们重点介绍透明化分片数据库中间件的核心功能与实现原理,另外两种类型的NewSQL在核心功能上类似,但实现原理会有所差别。
01
Apache ShardingSphere数据脱敏全解决方案详解(上)
Apache ShardingSphere针对新业务上线、旧业务改造分别提供了相应的全套脱敏解决方案。
01
Shardingsphere整合Narayana对XA分布式事务的支持(4)
ShardingSphere对于XA方案,提供了一套SPI解决方案,对Narayana进行了整合,Narayana初始化流程,开始事务流程,获取连接流程,提交事务流程,回滚事务流程。
01
从中间件到分布式数据库生态,ShardingSphere 5.x革新变旧
5.x 是 Apache ShardingSphere从分库分表中间件向分布式数据库生态转化的里程碑,从 4.x 版本后期开始打磨的可插拔架构在 5.x 版本已逐渐成型,项目的设计理念和 API 都进行了大幅提升。欢迎大家测试使用!
最新回复
丨
点赞排行
共0条评论
Apache ShardingSphere
文章数
96
阅读量
231327
作者其他文章
01
突破关系型数据库桎梏:云原生数据库中间件核心剖析
01
Apache ShardingSphere数据脱敏全解决方案详解(上)
01
Shardingsphere整合Narayana对XA分布式事务的支持(4)
01
从中间件到分布式数据库生态,ShardingSphere 5.x革新变旧
添加企业微信
获取1V1专业服务
扫码关注
京东云开发者公众号