|
|
|
@ -1364,11 +1364,11 @@ XXL-JOB调度模块基于自研调度组件并支持集群部署,调度数据
|
|
|
|
|
|
|
|
|
|
#### 5.3.2 系统组成
|
|
|
|
|
- **调度模块(调度中心)**:
|
|
|
|
|
负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;
|
|
|
|
|
支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。
|
|
|
|
|
负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;
|
|
|
|
|
支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。
|
|
|
|
|
- **执行模块(执行器)**:
|
|
|
|
|
负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效;
|
|
|
|
|
接收“调度中心”的执行请求、终止请求和日志请求等。
|
|
|
|
|
负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效;
|
|
|
|
|
接收“调度中心”的执行请求、终止请求和日志请求等。
|
|
|
|
|
|
|
|
|
|
#### 5.3.3 架构图
|
|
|
|
|
|
|
|
|
@ -1595,7 +1595,7 @@ echo "分片总数 total = $3"
|
|
|
|
|
- 1、执行器改为手动注册,下线一半机器列表(A组),线上运行另一半机器列表(B组);
|
|
|
|
|
- 2、等待A组机器任务运行结束并编译上线;执行器注册地址替换为A组;
|
|
|
|
|
- 3、等待B组机器任务运行结束并编译上线;执行器注册地址替换为A组+B组;
|
|
|
|
|
操作结束;
|
|
|
|
|
操作结束;
|
|
|
|
|
|
|
|
|
|
### 5.13 任务执行结果说明
|
|
|
|
|
系统根据以下标准判断任务执行结果,可参考之。
|
|
|
|
@ -1623,7 +1623,7 @@ XXL-JOB是一个跨语言的任务调度平台,主要体现在如下几个方
|
|
|
|
|
可以通过以下命令快速构建调度中心,并启动运行;
|
|
|
|
|
```
|
|
|
|
|
mvn clean package
|
|
|
|
|
docker build -t xuxueli/xxl-job-admin ./xxl-job-admin
|
|
|
|
|
docker build -t xuxueli/xxl-job-admin:{version} ./xxl-job-admin
|
|
|
|
|
docker run --name xxl-job-admin -p 8080:8080 -d xuxueli/xxl-job-admin
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
@ -1902,16 +1902,16 @@ Header:
|
|
|
|
|
- 4、支持“任务日志”;
|
|
|
|
|
- 5、支持“串行执行”,并行执行;
|
|
|
|
|
|
|
|
|
|
说明:V1.2版本将系统架构按功能拆分为:
|
|
|
|
|
说明:V1.2版本将系统架构按功能拆分为:
|
|
|
|
|
|
|
|
|
|
- 调度模块(调度中心):负责管理调度信息,按照调度配置发出调度请求;
|
|
|
|
|
- 执行模块(执行器):负责接收调度请求并执行任务逻辑;
|
|
|
|
|
- 通讯模块:负责调度模块和任务模块之间的信息通讯;
|
|
|
|
|
优点:
|
|
|
|
|
- 调度模块(调度中心):负责管理调度信息,按照调度配置发出调度请求;
|
|
|
|
|
- 执行模块(执行器):负责接收调度请求并执行任务逻辑;
|
|
|
|
|
- 通讯模块:负责调度模块和任务模块之间的信息通讯;
|
|
|
|
|
优点:
|
|
|
|
|
|
|
|
|
|
- 解耦:任务模块提供任务接口,调度模块维护调度信息,业务相互独立;
|
|
|
|
|
- 高扩展性;
|
|
|
|
|
- 稳定性;
|
|
|
|
|
- 解耦:任务模块提供任务接口,调度模块维护调度信息,业务相互独立;
|
|
|
|
|
- 高扩展性;
|
|
|
|
|
- 稳定性;
|
|
|
|
|
|
|
|
|
|
### 7.3 版本 V1.3.0,新特性[2016-05-19]
|
|
|
|
|
- 1、遗弃“本地任务”模式,推荐使用“远程任务”,易于系统解耦,任务对应的JobHandler统称为“执行器”;
|
|
|
|
@ -1919,17 +1919,17 @@ Header:
|
|
|
|
|
- 3、UI交互优化:左侧菜单展开状态优化,菜单项选中状态优化,任务列表打开表格有压缩优化;
|
|
|
|
|
- 4、【重要】“执行器”细分为:BEAN、GLUE两种开发模式,简介见下文:
|
|
|
|
|
|
|
|
|
|
“执行器” 模式简介:
|
|
|
|
|
- BEAN模式执行器:每个执行器都是Spring的一个Bean实例,XXL-JOB通过注解@JobHandler识别和调度执行器;
|
|
|
|
|
-GLUE模式执行器:每个执行器对应一段代码,在线Web编辑和维护,动态编译生效,执行器负责加载GLUE代码和执行;
|
|
|
|
|
“执行器” 模式简介:
|
|
|
|
|
- BEAN模式执行器:每个执行器都是Spring的一个Bean实例,XXL-JOB通过注解@JobHandler识别和调度执行器;
|
|
|
|
|
-GLUE模式执行器:每个执行器对应一段代码,在线Web编辑和维护,动态编译生效,执行器负责加载GLUE代码和执行;
|
|
|
|
|
|
|
|
|
|
### 7.4 版本 V1.3.1,新特性[2016-05-23]
|
|
|
|
|
- 1、更新项目目录结构:
|
|
|
|
|
- /xxl-job-admin -------------------- 【调度中心】:负责管理调度信息,按照调度配置发出调度请求;
|
|
|
|
|
- /xxl-job-core ----------------------- 公共依赖
|
|
|
|
|
- /xxl-job-executor-example ------ 【执行器】:负责接收调度请求并执行任务逻辑;
|
|
|
|
|
- /db ---------------------------------- 建表脚本
|
|
|
|
|
- /doc --------------------------------- 用户手册
|
|
|
|
|
- /xxl-job-admin -------------------- 【调度中心】:负责管理调度信息,按照调度配置发出调度请求;
|
|
|
|
|
- /xxl-job-core ----------------------- 公共依赖
|
|
|
|
|
- /xxl-job-executor-example ------ 【执行器】:负责接收调度请求并执行任务逻辑;
|
|
|
|
|
- /db ---------------------------------- 建表脚本
|
|
|
|
|
- /doc --------------------------------- 用户手册
|
|
|
|
|
- 2、在新的目录结构上,升级了用户手册;
|
|
|
|
|
- 3、优化了一些交互和UI;
|
|
|
|
|
|
|
|
|
@ -2395,9 +2395,9 @@ public void execute() {
|
|
|
|
|
- 6、【修复】漏洞修复,包括 "CVE-2024-42681" 子任务越权漏洞修复、"CVE-2023-33779" 任务API越权问题修复;
|
|
|
|
|
- 7、【升级】多个项目依赖升级至较新稳定版本,涉及netty、groovy、gson、springboot、mybatis等;
|
|
|
|
|
|
|
|
|
|
备注:
|
|
|
|
|
- 1、“CVE-2024-38820”漏洞源自spring,当前使用spring5.x及springboot2.x软件普遍受该问题影响。 该问题修复需要升级至spring6.x与springboot3.x,同时需要升级JDK17,如有诉求可自行升级。计划下个大版本升级spring及jdk版本解决该问题。
|
|
|
|
|
- 2、本次升级数据模型及通讯协议向前兼容,v2.4.*可无缝升级。
|
|
|
|
|
**备注:**
|
|
|
|
|
- a、“CVE-2024-38820”漏洞源自spring,当前使用spring5.x及springboot2.x软件普遍受该问题影响。 该问题修复需要升级至spring6.x与springboot3.x,同时需要升级JDK17,如有诉求可自行升级。计划下个大版本升级spring及jdk版本解决该问题。
|
|
|
|
|
- b、本次升级数据模型及通讯协议向前兼容,v2.4.*可无缝升级。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 7.35 版本 v2.5.0 Release Notes[规划中]
|
|
|
|
|