|
|
|
@ -386,9 +386,11 @@ XXL-JOB是一个轻量级分布式任务调度框架,其核心设计目标是
|
|
|
|
|
任务逻辑以JobHandler的形式存在于“执行器”所在项目中,开发流程如下:
|
|
|
|
|
|
|
|
|
|
#### 步骤一:执行器项目中,开发JobHandler:
|
|
|
|
|
- 1、 新建一个继承com.xxl.job.core.handler.IJobHandler的Java类;
|
|
|
|
|
- 2、 该类被Spring容器扫描为Bean实例,如加“@Component”注解;
|
|
|
|
|
- 3、 添加 “@JobHandler(value="自定义jobhandler名称")”注解,注解的value值为自定义的JobHandler名称,该名称对应的是调度中心新建任务的JobHandler属性的值。
|
|
|
|
|
|
|
|
|
|
- 1、继承"IJobHandler":“com.xxl.job.core.handler.IJobHandler”;
|
|
|
|
|
- 2、注册到Spring容器:添加“@Component”注解,被Spring容器扫描为Bean实例;
|
|
|
|
|
- 3、注册到执行器工厂:添加“@JobHandler(value="自定义jobhandler名称")”注解,注解value值对应的是调度中心新建任务的JobHandler属性的值。
|
|
|
|
|
- 4、执行日志:需要通过 "XxlJobLogger.log" 打印执行日志;
|
|
|
|
|
(可参考Sample示例执行器中的DemoJobHandler,见下图)
|
|
|
|
|
|
|
|
|
|
![输入图片说明](https://static.oschina.net/uploads/img/201607/23232347_oLlM.png "在这里输入图片标题")
|
|
|
|
@ -1073,32 +1075,33 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
|
|
|
|
- 10、任务日志文件路径时间戳格式化时SimpleDateFormat并发问题解决;
|
|
|
|
|
|
|
|
|
|
### 6.20 版本 V1.9.0 特性[迭代中]
|
|
|
|
|
- 1、新增任务运行模式 "GLUE模式(NodeJS) ",支持NodeJS脚本任务;
|
|
|
|
|
- 2、脚本任务Shell、Python和Nodejs等支持获取分片参数;
|
|
|
|
|
- 3、失败重试,完整支持:调度中心调度失败且启用"失败重试"策略时,将会自动重试一次;执行器执行失败且回调失败重试状态(新增失败重试状态返回值)时,也将会自动重试一次;
|
|
|
|
|
- 4、失败告警策略扩展:默认提供邮件失败告警,可扩展短信等,扩展代码位置为 "JobFailMonitorHelper.failAlarm";
|
|
|
|
|
- 5、执行器端口支持自动生成(小于等于0时),避免端口定义冲突;
|
|
|
|
|
- 6、调度报表优化,支持时间区间筛选;
|
|
|
|
|
- 7、Log组件支持输出异常栈信息,底层实现优化;
|
|
|
|
|
- 8、告警邮件样式优化,调整为表格形式,邮件组件调整为commons-email简化邮件操作;
|
|
|
|
|
- 9、项目依赖升级,如spring、jackson等;
|
|
|
|
|
- 10、任务日志,记录发起调度的机器信息;
|
|
|
|
|
- 11、交互优化,如登陆注销;
|
|
|
|
|
- 12、任务Cron长度扩展支持至128位,支持负责类型Cron设置;
|
|
|
|
|
- 13、执行器地址录入交互优化,地址长度扩展支持至512位,支持大规模执行器集群配置;
|
|
|
|
|
- 14、任务参数“IJobHandler.execute”入参改为“String params”,增强入参通用性。
|
|
|
|
|
- 15、JobHandler提供init/destroy方法,支持在JobHandler初始化和销毁时进行附加操作;
|
|
|
|
|
- 16、任务注解调整为 “@JobHandler”,与任务抽象接口统一;
|
|
|
|
|
- 17、修复任务监控线程被耗时任务阻塞的问题;
|
|
|
|
|
- 18、修复任务监控线程无法监控任务触发和执行状态均未0的问题;
|
|
|
|
|
- 19、执行器动态代理对象,拦截非业务方法的执行;
|
|
|
|
|
- 20、修复JobThread捕获Error错误不更新JobLog的问题;
|
|
|
|
|
- 21、修复任务列表界面左侧菜单合并时样式错乱问题;
|
|
|
|
|
- 22、调度中心项目日志配置改为xml文件格式;
|
|
|
|
|
- 23、Log地址格式兼容,支持非"/"结尾路径配置;
|
|
|
|
|
- 24、底层系统日志级别规范调整,清理遗留代码;
|
|
|
|
|
- 25、建表SQL优化,支持同步创建制定编码的库和表;
|
|
|
|
|
- 26、Nutz执行器Sample示例项目;
|
|
|
|
|
- 1、新增Nutz执行器Sample示例项目;
|
|
|
|
|
- 2、新增任务运行模式 "GLUE模式(NodeJS) ",支持NodeJS脚本任务;
|
|
|
|
|
- 3、脚本任务Shell、Python和Nodejs等支持获取分片参数;
|
|
|
|
|
- 4、失败重试,完整支持:调度中心调度失败且启用"失败重试"策略时,将会自动重试一次;执行器执行失败且回调失败重试状态(新增失败重试状态返回值)时,也将会自动重试一次;
|
|
|
|
|
- 5、失败告警策略扩展:默认提供邮件失败告警,可扩展短信等,扩展代码位置为 "JobFailMonitorHelper.failAlarm";
|
|
|
|
|
- 6、执行器端口支持自动生成(小于等于0时),避免端口定义冲突;
|
|
|
|
|
- 7、调度报表优化,支持时间区间筛选;
|
|
|
|
|
- 8、Log组件支持输出异常栈信息,底层实现优化;
|
|
|
|
|
- 9、告警邮件样式优化,调整为表格形式,邮件组件调整为commons-email简化邮件操作;
|
|
|
|
|
- 10、项目依赖升级,如spring、jackson等;
|
|
|
|
|
- 11、任务日志,记录发起调度的机器信息;
|
|
|
|
|
- 12、交互优化,如登陆注销;
|
|
|
|
|
- 13、任务Cron长度扩展支持至128位,支持负责类型Cron设置;
|
|
|
|
|
- 14、执行器地址录入交互优化,地址长度扩展支持至512位,支持大规模执行器集群配置;
|
|
|
|
|
- 15、任务参数“IJobHandler.execute”入参改为“String params”,增强入参通用性。
|
|
|
|
|
- 16、JobHandler提供init/destroy方法,支持在JobHandler初始化和销毁时进行附加操作;
|
|
|
|
|
- 17、任务注解调整为 “@JobHandler”,与任务抽象接口统一;
|
|
|
|
|
- 18、修复任务监控线程被耗时任务阻塞的问题;
|
|
|
|
|
- 19、修复任务监控线程无法监控任务触发和执行状态均未0的问题;
|
|
|
|
|
- 20、执行器动态代理对象,拦截非业务方法的执行;
|
|
|
|
|
- 21、修复JobThread捕获Error错误不更新JobLog的问题;
|
|
|
|
|
- 22、修复任务列表界面左侧菜单合并时样式错乱问题;
|
|
|
|
|
- 23、调度中心项目日志配置改为xml文件格式;
|
|
|
|
|
- 24、Log地址格式兼容,支持非"/"结尾路径配置;
|
|
|
|
|
- 25、底层系统日志级别规范调整,清理遗留代码;
|
|
|
|
|
- 26、建表SQL优化,支持同步创建制定编码的库和表;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### TODO LIST
|
|
|
|
|