Xxl-job安装部署以及SpringBoot集成Xxl-job使用
1、安装Xxl-job:
可以使用docker拉取镜像部署和源码编译两种方式,这里选择源码编译安装。
代码拉取地址:
https://github.com/xuxueli/xxl-job/tree/2.1.2
官方开发文档:
https://www.xuxueli.com/xxl-job/%E3%80%8A%E5%88%86%E5%B8%83%E5%BC%8F%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E5%B9%B3%E5%8F%B0XXL-JOB%E3%80%8B
2、打开项目
使用Maven打开项目,下载相关的jar包依赖。配置相关配置文件
/xxl-job/xxl-job-admin/src/main/resources/application.properties
这里可以参考官方开发文档进行配置。
3、初始化数据库
项目中包含数据库文件路径
/xxl-job/doc/db/tables_xxl_job.sql
4、打包部署项目
使用maven进行打包,排除test。
执行package:
打包成功。
5、启动编译过后的Jar包文件
输出以上内容,xxl-job启动成功。
调度中心访问地址:http://localhost:8080/xxl-job-admin (该地址执行器将会使用到,作为回调地址)
默认登录账号 “admin/123456”, 登录后运行界面如下图所示。
至此“调度中心”项目已经部署成功。如果还有其他不懂的请参考相关文档:
https://www.xuxueli.com/xxl-job/%E3%80%8A%E5%88%86%E5%B8%83%E5%BC%8F%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E5%B9%B3%E5%8F%B0XXL-JOB%E3%80%8B
6、SpringBoot集成Xxl-job使用
获取XxlJobConfig配置文件,参考Xxl-job源码列示:
/xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/core/config/XxlJobConfig.java
maven依赖:
<!-- xxl-job-core xxl-job需要的包-->
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.1.2</version>
</dependency>
xxl-job配置文件信息:
@Bean public XxlJobSpringExecutor xxlJobExecutor() { log.info(">>>>>>>>>>> xxl-job config init."); XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor(); xxlJobSpringExecutor.setAdminAddresses(adminAddresses); xxlJobSpringExecutor.setAppName(appName); xxlJobSpringExecutor.setIp(ip); xxlJobSpringExecutor.setPort(port); xxlJobSpringExecutor.setAccessToken(accessToken); xxlJobSpringExecutor.setLogPath(logPath); xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays); return xxlJobSpringExecutor; }
@Value("${xxl.job.admin.addresses}")
private String adminAddresses;
@Value("${xxl.job.executor.appname}")
private String appName;
@Value("${xxl.job.executor.ip}")
private String ip;
@Value("${xxl.job.executor.port}")
private int port;
@Value("${xxl.job.accessToken}")
private String accessToken;
@Value("${xxl.job.executor.logpath}")
private String logPath;
@Value("${xxl.job.executor.logretentiondays}")
private int logRetentionDays;
设置spring boot配置application.yml文件信息:
xxl: job: executor: 执行器app的名称,和控制台保持一致 appname: xxl-job-executor-sample 有效使用该地址作为注册地址 为空使用内嵌服务地址 address: 执行器IP 默认自动获取 ip: localhost 执行器端口 小于等于0 自动获取 ,默认 9999 ,配置多个执行器时,需要配置不同的执行器端口 port: 9999 执行器日志保持天数 -1永久生效 logretentiondays: 30 执行器日志文件保持地址 ,为空使用默认保存地址 logpath: D:/idea-project/data/xxl-job-log/executor admin: 调度中心部署地址,多个配置 ,分割 addresses: http://127.0.0.1:8080/xxl-job-admin 执行器token accessToken:
控制台输出以下内容表示注册成功:
如果输出以下信息,表示注册失败,需要重新检测配置文件信息:
登录任务调度中心 -->执行器管理 ,可以查看是否注册成功。
显示上面信息,表示注册成功。
7、配置MyJobHandle执行任务文件:
@Component public class MyJobHandle { @Autowired private IUserService userService; /** * xxl-job-core最新版本2.1.2中@JobHandler注解已过时,取而代之的是@XxlJob注解,也不需要去继承IJobHandler类。 * * @param param 调度平台接收的参数信息 */ @XxlJob("syncUser") public ReturnT<String> syncUser(String param){ System.out.println("--------------->>参数为\t"+param); XxlJobLogger.log("xxl-job启动成功 ,欢迎使用xxl-job同步数据 。。。 syncUser"); List<User> userList = userService.userList(); userList.forEach(System.out::println); return ReturnT.SUCCESS; } }
登录任务调度中心-->任务管理 ,新增任务。
添加成功点击执行按钮,启动任务:
查看执行结果:调度日志
说明任务执行成功。在来查看后台控制台输出:
输出内容,说明任务配置成功了。
以上就是xxl-job使用的简单案例,想要学习更多内容可以去官网地址进行学习。