|
|
|
@ -666,7 +666,7 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
|
|
|
|
|
脚本返回码为0时表示执行成功,其他标示执行失败。
|
|
|
|
|
|
|
|
|
|
## 六、版本更新日志
|
|
|
|
|
#### 6.1 版本 V1.1.x,新特性
|
|
|
|
|
#### 6.1 版本 V1.1.x,新特性[2015-12-05]
|
|
|
|
|
**【于V1.1.x版本,XXL-JOB正式应用于我司,内部定制别名为 “Ferrari”,新接入应用推荐使用最新版本】**
|
|
|
|
|
- 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;
|
|
|
|
|
- 2、动态:支持动态修改任务状态,动态暂停/恢复任务,即时生效;
|
|
|
|
@ -677,7 +677,7 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
|
|
|
|
|
- 7、支持自定义参数;
|
|
|
|
|
- 8、支持远程任务执行终止;
|
|
|
|
|
|
|
|
|
|
#### 6.2 版本 V1.2.x,新特性
|
|
|
|
|
#### 6.2 版本 V1.2.x,新特性[2016-01-17]
|
|
|
|
|
- 1、支持任务分组;
|
|
|
|
|
- 2、支持“本地任务”、“远程任务”;
|
|
|
|
|
- 3、底层通讯支持两种方式,Servlet方式 + JETTY方式;
|
|
|
|
@ -695,7 +695,7 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
|
|
|
|
|
- 高扩展性;
|
|
|
|
|
- 稳定性;
|
|
|
|
|
|
|
|
|
|
#### 6.3 版本 V1.3.0,新特性
|
|
|
|
|
#### 6.3 版本 V1.3.0,新特性[2016-05-19]
|
|
|
|
|
- 1、遗弃“本地任务”模式,推荐使用“远程任务”,易于系统解耦,任务对应的JobHander统称为“执行器”;
|
|
|
|
|
- 2、遗弃“servlet”方式底层系统通讯,推荐使用JETTY方式,调度+回调双向通讯,重构通讯逻辑;
|
|
|
|
|
- 3、UI交互优化:左侧菜单展开状态优化,菜单项选中状态优化,任务列表打开表格有压缩优化;
|
|
|
|
@ -705,7 +705,7 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
|
|
|
|
|
- BEAN模式执行器:每个执行器都是Spring的一个Bean实例,XXL-JOB通过注解@JobHander识别和调度执行器;
|
|
|
|
|
-GLUE模式执行器:每个执行器对应一段代码,在线Web编辑和维护,动态编译生效,执行器负责加载GLUE代码和执行;
|
|
|
|
|
|
|
|
|
|
#### 6.4 版本 V1.3.1,新特性
|
|
|
|
|
#### 6.4 版本 V1.3.1,新特性[2016-05-23]
|
|
|
|
|
- 1、更新项目目录结构:
|
|
|
|
|
- /xxl-job-admin -------------------- 【调度中心】:负责管理调度信息,按照调度配置发出调度请求;
|
|
|
|
|
- /xxl-job-core ----------------------- 公共依赖
|
|
|
|
@ -715,12 +715,12 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
|
|
|
|
|
- 2、在新的目录结构上,升级了用户手册;
|
|
|
|
|
- 3、优化了一些交互和UI;
|
|
|
|
|
|
|
|
|
|
#### 6.5 版本 V1.3.2,新特性
|
|
|
|
|
#### 6.5 版本 V1.3.2,新特性[2016-05-28]
|
|
|
|
|
- 1、调度逻辑进行事务包裹;
|
|
|
|
|
- 2、执行器异步回调执行日志;
|
|
|
|
|
- 3、【重要】在 “调度中心” 支持HA的基础上,扩展执行器的Failover支持,支持配置多执行期地址;
|
|
|
|
|
|
|
|
|
|
#### 6.6 版本 V1.4.0 新特性
|
|
|
|
|
#### 6.6 版本 V1.4.0 新特性[2016-07-24]
|
|
|
|
|
- 1、任务依赖: 通过事件触发方式实现, 任务执行成功并回调时会主动触发一次子任务的调度, 多个子任务用逗号分隔;
|
|
|
|
|
- 2、执行器底层实现代码进行重度重构, 优化底层建表脚本;
|
|
|
|
|
- 3、执行器中任务线程分组逻辑优化: 之前根据执行器JobHandler进行线程分组,当多个任务复用Jobhanlder会导致相互阻塞。现改为根据调度中心任务进行任务线程分组,任务与任务执行相互隔离;
|
|
|
|
@ -739,7 +739,7 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件,需要通过
|
|
|
|
|
|
|
|
|
|
Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段, 地址见分支 [V1.3](https://github.com/xuxueli/xxl-job/tree/v1.3) 。新特性将会在master分支持续更新。
|
|
|
|
|
|
|
|
|
|
#### 6.7 版本 V1.4.1 新特性
|
|
|
|
|
#### 6.7 版本 V1.4.1 新特性[2016-09-06]
|
|
|
|
|
- 1、项目成功推送maven中央仓库, 中央仓库地址以及依赖如下:
|
|
|
|
|
```
|
|
|
|
|
<!-- http://repo1.maven.org/maven2/com/xuxueli/xxl-job-core/ -->
|
|
|
|
@ -757,14 +757,14 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 7、底层表结构,表明统一大写;
|
|
|
|
|
- 8、调度中心,异常处理器JSON响应的ContentType修改,修复浏览器不识别的问题;
|
|
|
|
|
|
|
|
|
|
#### 6.8 版本 V1.4.2 新特性
|
|
|
|
|
#### 6.8 版本 V1.4.2 新特性[2016-09-29]
|
|
|
|
|
- 1、推送新版本 V1.4.2 至中央仓库, 大版本 V1.4 进入维护阶段;
|
|
|
|
|
- 2、任务新增时,任务列表偏移问题修复;
|
|
|
|
|
- 3、修复一处因bootstrap不支持模态框重叠而导致的样式错乱的问题, 在任务编辑时会出现该问题;
|
|
|
|
|
- 4、调度超时和Handler匹配不到时,调度状态优化;
|
|
|
|
|
- 5、因catch异常,导致任务不可终止的问题,给出解决方案, 见文档;
|
|
|
|
|
|
|
|
|
|
#### 6.9 版本 V1.5.0 特性
|
|
|
|
|
#### 6.9 版本 V1.5.0 特性[2016-11-13]
|
|
|
|
|
- 1、任务注册: 执行器会周期性自动注册任务, 调度中心将会自动发现注册的任务并触发执行。
|
|
|
|
|
- 2、"执行器" 新增参数 "AppName" : 是每个执行器集群的唯一标示AppName, 并周期性以AppName为对象进行自动注册。
|
|
|
|
|
- 3、调度中心新增栏目 "执行器管理" : 管理在线的执行器, 通过属性AppName自动发现注册的执行器。只有被管理的执行器才允许被使用;
|
|
|
|
@ -774,14 +774,14 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 7、表结构调整,底层重构优化;
|
|
|
|
|
- 8、"调度中心"自动注册和发现,failover: 调度中心周期性自动注册, 任务回调时可以感知在线的所有调度中心地址, 通过failover的方式进行任务回调,避免回调单点风险。
|
|
|
|
|
|
|
|
|
|
#### 6.10 版本 V1.5.1 特性
|
|
|
|
|
#### 6.10 版本 V1.5.1 特性[2016-11-13]
|
|
|
|
|
- 1、底层代码重构和逻辑优化,POM清理以及CleanCode;
|
|
|
|
|
- 2、Servlet/JSP Spec设定为3.0/2.2
|
|
|
|
|
- 3、Spring升级至3.2.17.RELEASE版本;
|
|
|
|
|
- 4、Jetty升级版本至8.2.0.v20160908;
|
|
|
|
|
- 5、已推送V1.5.0和V1.5.1至Maven中央仓库;
|
|
|
|
|
|
|
|
|
|
#### 6.10 版本 V1.5.2 特性
|
|
|
|
|
#### 6.10 版本 V1.5.2 特性[2017-02-28]
|
|
|
|
|
- 1、IP工具类获取IP逻辑优化,IP静态缓存;
|
|
|
|
|
- 2、执行器、调度中心,均支持自定义注册IP地址;解决机器多网卡时错误网卡注册的情况;
|
|
|
|
|
- 3、任务跨天执行时生成多份日志文件的问题修复;
|
|
|
|
@ -791,7 +791,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 7、底层代码重构和逻辑优化以及CleanCode;
|
|
|
|
|
- 8、GLUE依赖注入逻辑优化,支持别名注入;
|
|
|
|
|
|
|
|
|
|
#### 6.11 版本 V1.6.0 特性
|
|
|
|
|
#### 6.11 版本 V1.6.0 特性[2017-03-13]
|
|
|
|
|
- 1、通讯方案升级,原基于HEX的通讯模型调整为基于HTTP的B-RPC的通讯模型;
|
|
|
|
|
- 2、执行器支持手动设置执行地址列表,提供开关切换使用注册地址还是手动设置的地址;
|
|
|
|
|
- 3、执行器路由规则:第一个、最后一个、轮询、随机、一致性HASH、最不经常使用、最近最久未使用、故障转移;
|
|
|
|
@ -802,20 +802,20 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 8、新建任务默认为非运行状态;
|
|
|
|
|
- 9、GLUE模式任务实例更新逻辑优化,原根据超时时间更新改为根据版本号更新,源码变动版本号加一;
|
|
|
|
|
|
|
|
|
|
#### 6.12 版本 V1.6.1 特性
|
|
|
|
|
#### 6.12 版本 V1.6.1 特性[2017-03-25]
|
|
|
|
|
- 1、Rolling日志;
|
|
|
|
|
- 2、WebIDE交互重构;
|
|
|
|
|
- 3、通讯增强校验,有效过滤非正常请求;
|
|
|
|
|
- 4、权限增强校验,采用动态登录TOKEN(推荐接入内部SSO);
|
|
|
|
|
- 5、数据库配置优化,解决乱码问题;
|
|
|
|
|
|
|
|
|
|
#### 6.13 版本 V1.6.2 特性
|
|
|
|
|
#### 6.13 版本 V1.6.2 特性[2017-04-25]
|
|
|
|
|
- 1、运行报表:支持实时查看运行数据,如任务数量、调度次数、执行器数量等;以及调度报表,如调度日期分布图,调度成功分布图等;
|
|
|
|
|
- 2、JobHandler支持设置任务返回值,在任务逻辑中可以方便的控制任务执行结果;
|
|
|
|
|
- 3、资源路径包含空格或中文时资源文件无法加载时,无法准确查看异常信息的问题处理。
|
|
|
|
|
- 4、路由策越优化:循环和LFU路由策略计数器自增无上限问题和首次路由压力集中在首台机器的问题修复;
|
|
|
|
|
|
|
|
|
|
#### 6.14 版本 V1.7.0 特性
|
|
|
|
|
#### 6.14 版本 V1.7.0 特性[2017-05-02]
|
|
|
|
|
- 1、脚本任务:支持以GLUE模式开发和运行脚本任务,包括Shell、Python和Groovy等类型脚本;
|
|
|
|
|
- 2、新增spring-boot类型执行器example项目;
|
|
|
|
|
- 3、升级jetty版本至9.2;
|
|
|
|
@ -823,7 +823,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 5、执行器移除GlueLoader依赖,改为推送方式实现,从而GLUE源码加载不再依赖JDBC;
|
|
|
|
|
- 6、登录拦截Redirect时获取项目名,解决非根据目录发布时跳转404问题;
|
|
|
|
|
|
|
|
|
|
#### 6.15 版本 V1.7.1 特性
|
|
|
|
|
#### 6.15 版本 V1.7.1 特性[2017-05-08]
|
|
|
|
|
- 1、运行日志读写编码统一为UTF-8,解决windows环境下日志乱码问题;
|
|
|
|
|
- 2、通讯超时时间限定为10s,避免异常情况下调度线程占用;
|
|
|
|
|
- 3、执行器,server启动、销毁和注册逻辑调整;
|
|
|
|
@ -842,7 +842,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 2、执行器与数据库解耦,只需配置调度中心集群地址即可(与当前通过JDBC注册自动发现方式,相冲突,待考虑),调度中心提供API供执行器回调和注册,取消调度中心内部jetty;
|
|
|
|
|
- 3、任务分片:一个任务被拆分成N个独立的任务单元,然后由分布式部署的执行器分别执行某一个或几个分片单元;
|
|
|
|
|
- 4、任务分片路由:分片采用一致性Hash算法计算出尽量稳定的分片顺序,即使注册机器存在波动也不会引起分批分片顺序大的波动;
|
|
|
|
|
|
|
|
|
|
- 5、失败重试优化:目前失败重试逻辑为,在本次调度请求失败后重新执行一次请求逻辑。优化点为针对调度和执行失败时均做失败重试,重试时重新触发一次完整调度,这将可能导致失败是调度死循环,考虑中。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 七、其他
|
|
|
|
|