官网:http://www.xuxueli.com/xxl-job
1、执行数据库初始化脚本
脚本路径:xxl-job/doc/db/tables_xxl_job.sql
2、修改调度中心日志文件路径
配置文件路径:xxl-job-admin/src/main/resources/xxl-job-admin.properties
3、部署调度中心
4、修改执行器项目日志文件路径
此处以xxl-job-executor-sample-spring项目为例
修改xxl-job-executor.properties和log4j.xml 两个配置文件中的日志文件路径
5、添加任务处理代码
此处使用DemoJobHandler
演示,也可自行JobHandler
进行练习
6、启动执行器项目
此处为xxl-job-executor-sample-spring项目
7、进入调度中心项目,在执行器管理菜单中新增执行器
注册方式为【自动注册】时,会自动获取执行器地址,该执行器所在项目中配置的xxl.job.executor.ip属性值须为空
注册方式为【手动录入】时,需要先在【机器地址】中输入执行器地址(ip:port)
AppName 中输入的值需要和执行器所在项目中配置的xxl.job.executor.appname属性值保持一致
8、在任务管理器中添加任务
【执行器】选择我们刚创建的执行器
【JobHandler】填写JobHandler
中使用@JobHandler
注解指定的名称,官方demo见文章底部
9、在任务列表中点击【执行】按钮,查看日志文件,任务已执行
注意:
1、在执行器项目(此处为xxl-job-executor-sample-spring项目)的xxl-job-executor.properties
配置文件中有如下一项配置
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin
由于演示时 调度中心项目和执行器项目在同一个tomcat上,故未修改此处配置,在生产或测试环境中需根据实际情况在此处指定调度中心项目地址
2、在调度中心配置完任务后,可在任务列表中找到刚配置的任务,点击【执行】按钮,手动触发该任务执行,该任务将会被触发执行一次,可用于任务测试
官方demo
/**
* 任务Handler示例(Bean模式)
*
* 开发步骤:
* 1、继承"IJobHandler":“com.xxl.job.core.handler.IJobHandler”;
* 2、注册到Spring容器:添加“@Component”注解,被Spring容器扫描为Bean实例;
* 3、注册到执行器工厂:添加“@JobHandler(value="自定义jobhandler名称")”注解,注解value值对应的是调度中心新建任务的JobHandler属性的值。
* 4、执行日志:需要通过 "XxlJobLogger.log" 打印执行日志;
*
* @author xuxueli 2015-12-19 19:43:36
*/
@JobHandler(value="demoJobHandler")
@Component
public class DemoJobHandler extends IJobHandler {
@Override
public ReturnT<String> execute(String param) throws Exception {
XxlJobLogger.log("XXL-JOB, Hello World.");
for (int i = 0; i < 5; i++) {
XxlJobLogger.log("beat at:" + i);
TimeUnit.SECONDS.sleep(2);
}
return SUCCESS;
}
}