Ver Fonte

升级大版本 2.3.0 (快照版本)

xueli.xue há 4 anos atrás
pai
commit
6339f528c5

+ 1 - 1
README.md

@@ -57,7 +57,7 @@ XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅
 - 5、注册中心: 执行器会周期性自动注册任务, 调度中心将会自动发现注册的任务并触发执行。同时,也支持手动录入执行器地址;
 - 6、弹性扩容缩容:一旦有新执行器机器上线或者下线,下次调度时将会重新分配任务;
 - 7、触发策略:提供丰富的任务触发策略,包括:Cron触发、固定间隔触发、固定延时触发、API(事件)触发、人工触发、父子任务触发;
-- 8、调度过期策略:调度中心错调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;
+- 8、调度过期策略:调度中心错调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;
 - 9、阻塞处理策略:调度过于密集执行器来不及处理时的处理策略,策略包括:单机串行(默认)、丢弃后续调度、覆盖之前调度;
 - 10、任务超时控制:支持自定义任务超时时间,任务运行超时将会主动中断任务;
 - 11、任务失败重试:支持自定义任务失败重试次数,当任务失败时将会按照预设的失败重试次数主动进行重试;其中分片任务支持分片粒度的失败重试;

+ 41 - 40
doc/XXL-JOB官方文档.md

@@ -28,7 +28,7 @@ XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅
 - 5、注册中心: 执行器会周期性自动注册任务, 调度中心将会自动发现注册的任务并触发执行。同时,也支持手动录入执行器地址;
 - 6、弹性扩容缩容:一旦有新执行器机器上线或者下线,下次调度时将会重新分配任务;
 - 7、触发策略:提供丰富的任务触发策略,包括:Cron触发、固定间隔触发、固定延时触发、API(事件)触发、人工触发、父子任务触发;
-- 8、调度过期策略:调度中心错调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;
+- 8、调度过期策略:调度中心错调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;
 - 9、阻塞处理策略:调度过于密集执行器来不及处理时的处理策略,策略包括:单机串行(默认)、丢弃后续调度、覆盖之前调度;
 - 10、任务超时控制:支持自定义任务超时时间,任务运行超时将会主动中断任务;
 - 11、任务失败重试:支持自定义任务失败重试次数,当任务失败时将会按照预设的失败重试次数主动进行重试;其中分片任务支持分片粒度的失败重试;
@@ -2061,41 +2061,47 @@ data: post-data
 - 22、执行备注消息长度限制,修复数据超长无法存储导致导致回调失败的问题;
 注意:XxlJobSpringExecutor组件个别字段调整:“appName” 调整为 “appname” ,升级时该组件时需要注意;
 
-### 7.31 版本 v2.2.1 Release Notes[迭代中]
-- 1、Cron编辑器增强:Cron编辑器修改cron时可实时查看最近运行时间;
-- 2、Cron编辑器问题修复:修复小概率情况下cron单个字段修改时导致其他字段被重置问题;
-- 3、邮箱告警配置优化:将"spring.mail.from"与"spring.mail.username"属性拆分开,更加灵活的支持一些无密码邮箱服务;
-- 4、多个项目依赖升级至较新稳定版本,如netty、groovy、spring、springboot、mybatis等;
-- 5、通用HTTP任务Handler(httpJobHandler)优化:修复 "setDoOutput(true)" 导致任务请求GetMethod失效问题;
-- 6、新增任务属性 "XxlJobContent" ,统一维护任务上下文信息,包括任务ID、分片参数等,方便运行时存取任务相关信息;
+### 7.31 版本 v2.3.0 Release Notes[迭代中]
+- 1、新增调度过期策略:调度中心错过调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;
+- 2、新增触发策略:除了常规Cron、API、父子任务触发方式外,新增提供 "固定间隔触发、固定延时触发(规划)" 两种新触发方式;
+- 3、Cron编辑器增强:Cron编辑器修改cron时可实时查看最近运行时间;
+- 4、Cron编辑器问题修复:修复小概率情况下cron单个字段修改时导致其他字段被重置问题;
+- 5、新增任务属性 "XxlJobContext" ,统一维护任务上下文信息,包括任务ID、分片参数等,方便运行时存取任务相关信息;
     - 6.1、废弃 "ShardingUtil" 组件:改用 "XxlJobContext.getXxlJobContext().getShardIndex()/getShardTotal();" 获取分片参数;
-    - 6.2、日志组件逻辑调整:日志组件改为通过 XxlJobContent 获取任务上下文并匹配写入对应日志文件;
-- 7、页面redirect跳转后https变为http问题修复;
-- 8、调度线程连接池优化,修复连接有效性校验超时问题;
-- 9、轮训路由策略优化,修复小概率下并发问题;
-- 10、执行器日志清理优化,修复小概率下日志文件为空导致清理异常问题;
-- 11、执行器示例项目规范整理;
-- 12、UI组件常规升级,提升组件稳定性;
-- 13、调度中心远程执行日志查询乱码问题修复;
-- 14、执行器注册表字段优化,解决执行器注册节点过多导致注册信息存储和更新失败的问题;
-- 15、调度通讯组件优化,修复RestFul方式调用 DotNet 版本执行器时心跳检测失败问题;
+    - 6.2、日志组件逻辑调整:日志组件改为通过 XxlJobContext 获取任务上下文并匹配写入对应日志文件;
+- 6、执行器注册组件优化:注册逻辑调整为异步方式,提高注册性能;
+- 7、执行器鉴权校验:执行器启动时主动校验accessToken,为空则主动Warn告警;(已规划安全强化:AccessToken动态生成、动态启停等)
+- 8、邮箱告警配置优化:将"spring.mail.from"与"spring.mail.username"属性拆分开,更加灵活的支持一些无密码邮箱服务;
+- 9、多个项目依赖升级至较新稳定版本,如netty、groovy、spring、springboot、mybatis等;
+- 10、UI组件常规升级,提升组件稳定性;
+- 11、调度中心页面交互优化:用户管理模块密码列取消;多处表达autocomplete取消;执行器管理模块XSS拦截校验等;
+- 12、通用HTTP任务Handler(httpJobHandler)优化:修复 "setDoOutput(true)" 导致任务请求GetMethod失效问题;
+- 13、执行器Commandhandler示例任务优化,修复极端情况下脚本进程挂起问题;
+- 14、调度通讯组件优化,修复RestFul方式调用 DotNet 版本执行器时心跳检测失败问题;
+- 15、调度中心远程执行日志查询乱码问题修复;
 - 16、调度中心组件加载顺序优化,修复极端情况下调度组件初始慢导致的调度失败问题;
 - 17、执行器注册线程优化,修复极端情况下初始化失败时导致NPE问题;
-- 18、执行器Commandhandler示例任务优化,修复极端情况下脚本进程挂起问题;
-- 19、调度中心页面交互优化:用户管理模块密码列取消;多处表达autocomplete取消;执行器管理模块XSS拦截校验等;
-- 20、执行器注册组件优化:注册逻辑调整为异步方式,提高注册性能;
-- 21、调度过期策略:调度中心错误调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;
-- 22、触发策略强化:除了常规Cron、API、父子任务触发方式外,新增提供 "固定间隔触发、固定延时触发" 两种新触发方式;
-- 23、任务调度生命周期重构:调度(schedule)、触发(trigger)、执行(handle)、回调(callback)、结束(complete);
-- 24、执行器鉴权校验:执行器启动时主动校验accessToken,为空则主动Warn告警;(已规划安全强化:AccessToken动态生成、动态启停等)
-
-### 7.32 版本 v2.3.0 Release Notes[规划中]
-- 1、[规划中]分片任务:全部完成后才会出发后置节点;
-- 2、[规划中]DAG流程任务
+- 18、调度线程连接池优化,修复连接有效性校验超时问题;
+- 19、执行器注册表字段优化,解决执行器注册节点过多导致注册信息存储和更新失败的问题;
+- 20、轮训路由策略优化,修复小概率下并发问题;
+- 21、页面redirect跳转后https变为http问题修复;
+- 22、执行器日志清理优化,修复小概率下日志文件为空导致清理异常问题;
+- 23、执行器示例项目规范整理;
+- 24、任务调度生命周期重构:调度(schedule)、触发(trigger)、执行(handle)、回调(callback)、结束(complete);
+- 25、[规划中]任务日志重构:一次调度只记录一条主任务,维护起止时间和状态。
+    - 普通任务:只记录一条主任务;
+    - 广播任务:记录一条主任务,每个分片任务记录一条次任务,关联在主任务上;
+    - 重试任务:失败时,新增主任务。所有调度记录,包括入口调度和重试调度,均挂载主任务上。
+- 26、[规划中]分片任务:全部完成后才会出发后置节点;
+
+
+### 7.32 版本 v2.4.0 Release Notes[规划中]
+- 1、[规划中]DAG流程任务
     - DAG任务:支持参数传递,共享数据:DAG任务创建、管理,DAG任务日志查看、操作;
     - 子任务:废弃
-- 3、[规划中]多数据库支持,DAO层通过JPA实现,不限制数据库类型;
-- 4、[规划中]告警增强:邮件告警 + webhook告警;
+- 2、[规划中]多数据库支持,DAO层通过JPA实现,不限制数据库类型;
+- 3、[规划中]告警增强:邮件告警 + webhook告警;
+- 4、[规划中]安全强化:AccessToken动态生成、动态启停;控制调度、回调;
 
 ### TODO LIST
 - 1、任务分片路由:分片采用一致性Hash算法计算出尽量稳定的分片顺序,即使注册机器存在波动也不会引起分批分片顺序大的波动;目前采用IP自然排序,可以满足需求,待定;
@@ -2125,15 +2131,10 @@ data: post-data
 - 20、批量调度:调度请求入queue,调度线程批量获取调度请求并发起远程调度;提高线程效率;
 - 21、执行器端口复用,复用容器端口提供通讯服务;
 - 22、分片任务全部成功后触发子任务;
-- 23、安全强化:AccessToken动态生成、动态启停;控制调度、回调;
-- 24、新增执行器描述属性;任务名称属性;
-- 25、自定义失败重试时间间隔;
-- 26、任务日志重构:一次调度只记录一条主任务,维护起止时间和状态。
-    - 普通任务:只记录一条主任务;
-    - 广播任务:记录一条主任务,每个分片任务记录一条次任务,关联在主任务上;
-    - 重试任务:失败时,新增主任务。所有调度记录,包括入口调度和重试调度,均挂载主任务上。
-- 27、任务标签:方便搜索;
-- 28、执行器:dag执行器,不需要注册机器;
+- 23、新增执行器描述属性;任务名称属性;
+- 24、自定义失败重试时间间隔;
+- 25、任务标签:方便搜索;
+- 26、执行器:dag执行器,不需要注册机器;
 
 
 ## 八、其他

+ 1 - 1
doc/db/tables_xxl_job.sql

@@ -1,5 +1,5 @@
 #
-# XXL-JOB v2.2.1-SNAPSHOT
+# XXL-JOB v2.3.0-SNAPSHOT
 # Copyright (c) 2015-present, xuxueli.
 
 CREATE database if NOT EXISTS `xxl_job` default character set utf8mb4 collate utf8mb4_unicode_ci;

+ 1 - 1
pom.xml

@@ -3,7 +3,7 @@
 	<modelVersion>4.0.0</modelVersion>
 	<groupId>com.xuxueli</groupId>
 	<artifactId>xxl-job</artifactId>
-	<version>2.2.1-SNAPSHOT</version>
+	<version>2.3.0-SNAPSHOT</version>
 	<packaging>pom</packaging>
 
 	<name>${project.artifactId}</name>

+ 1 - 1
xxl-job-admin/pom.xml

@@ -4,7 +4,7 @@
 	<parent>
 		<groupId>com.xuxueli</groupId>
 		<artifactId>xxl-job</artifactId>
-		<version>2.2.1-SNAPSHOT</version>
+		<version>2.3.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>xxl-job-admin</artifactId>
 	<packaging>jar</packaging>

+ 1 - 1
xxl-job-admin/src/main/resources/i18n/message_en.properties

@@ -1,6 +1,6 @@
 admin_name=Scheduling Center
 admin_name_full=Distributed Task Scheduling Platform XXL-JOB
-admin_version=2.2.1-SNAPSHOT
+admin_version=2.3.0-SNAPSHOT
 admin_i18n=en
 
 ## system

+ 1 - 1
xxl-job-admin/src/main/resources/i18n/message_zh_CN.properties

@@ -1,6 +1,6 @@
 admin_name=任务调度中心
 admin_name_full=分布式任务调度平台XXL-JOB
-admin_version=2.2.1-SNAPSHOT
+admin_version=2.3.0-SNAPSHOT
 admin_i18n=
 
 ## system

+ 1 - 1
xxl-job-admin/src/main/resources/i18n/message_zh_TC.properties

@@ -1,6 +1,6 @@
 admin_name=任務調度中心
 admin_name_full=分布式任務調度平臺XXL-JOB
-admin_version=2.2.1-SNAPSHOT
+admin_version=2.3.0-SNAPSHOT
 admin_i18n=
 
 ## system

+ 1 - 1
xxl-job-core/pom.xml

@@ -4,7 +4,7 @@
 	<parent>
 		<groupId>com.xuxueli</groupId>
 		<artifactId>xxl-job</artifactId>
-		<version>2.2.1-SNAPSHOT</version>
+		<version>2.3.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>xxl-job-core</artifactId>
 	<packaging>jar</packaging>

+ 1 - 1
xxl-job-executor-samples/pom.xml

@@ -5,7 +5,7 @@
     <parent>
         <groupId>com.xuxueli</groupId>
         <artifactId>xxl-job</artifactId>
-        <version>2.2.1-SNAPSHOT</version>
+        <version>2.3.0-SNAPSHOT</version>
     </parent>
     <artifactId>xxl-job-executor-samples</artifactId>
     <packaging>pom</packaging>

+ 1 - 1
xxl-job-executor-samples/xxl-job-executor-sample-frameless/pom.xml

@@ -6,7 +6,7 @@
     <parent>
         <groupId>com.xuxueli</groupId>
         <artifactId>xxl-job-executor-samples</artifactId>
-        <version>2.2.1-SNAPSHOT</version>
+        <version>2.3.0-SNAPSHOT</version>
     </parent>
     <artifactId>xxl-job-executor-sample-frameless</artifactId>
     <packaging>jar</packaging>

+ 1 - 1
xxl-job-executor-samples/xxl-job-executor-sample-jfinal/pom.xml

@@ -5,7 +5,7 @@
     <parent>
         <groupId>com.xuxueli</groupId>
         <artifactId>xxl-job-executor-samples</artifactId>
-        <version>2.2.1-SNAPSHOT</version>
+        <version>2.3.0-SNAPSHOT</version>
     </parent>
     <modelVersion>4.0.0</modelVersion>
     <artifactId>xxl-job-executor-sample-jfinal</artifactId>

+ 1 - 1
xxl-job-executor-samples/xxl-job-executor-sample-spring/pom.xml

@@ -4,7 +4,7 @@
 	<parent>
 		<groupId>com.xuxueli</groupId>
 		<artifactId>xxl-job-executor-samples</artifactId>
-		<version>2.2.1-SNAPSHOT</version>
+		<version>2.3.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>xxl-job-executor-sample-spring</artifactId>
 	<packaging>war</packaging>

+ 1 - 1
xxl-job-executor-samples/xxl-job-executor-sample-springboot/pom.xml

@@ -6,7 +6,7 @@
     <parent>
         <groupId>com.xuxueli</groupId>
         <artifactId>xxl-job-executor-samples</artifactId>
-        <version>2.2.1-SNAPSHOT</version>
+        <version>2.3.0-SNAPSHOT</version>
     </parent>
     <artifactId>xxl-job-executor-sample-springboot</artifactId>
     <packaging>jar</packaging>