一、初识xxl-job

我自己的理解,是我们自己写的逻辑代码,需要定期的去执行,然后在这个背景下,我们会使用到我们的任务调度,在此我使用的是xxl-job任务调度。

二、概述

xxl-job是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。

三、下载

源码仓库地址(一个是githup,另外一个是码云,任何一个下载都行)

源码仓库地址Release Download
https://github.com/xuxueli/xxl-jobDownload
http://gitee.com/xuxueli0323/xxl-jobDownload

四、开发环境

1.JDK:1.7+

2.Servlet/JSP Spec:3.1/2.3

3.Tomcat:8.5.x/Jetty9.2.x

4.Spring-boot:1.5.x/Spring4.x

5.Mysql:5.6+

6.Maven:3+

五、操作步骤

1.先在我们的本地数据库建立16张表,如果未建表,程序启动会报错,具体的建表语句是在我们项目这个位置:

/xxl-job/doc/db/tables_xxl_job.sql,然后执行sql脚本就行了,会在库中生成16张表。

表如下:

2.修改xxl-job项目下的application.properties文件中的一些基本信息:

2.1.换成自己的数据库

2.2.换成自己的邮箱以及密码(根据他官网这么修改的)

六、启动调度中心项目(xxl-job-admin)

如果已经正确进行上述配置,可将项目编译打包部署。 调度中心访问地址:http://localhost:8080/xxl-job-admin (该地址执行器将会使用到,作为回调地址),登录后运行界面如下图所示

 至此“调度中心”项目已经部署成功。

七、 配置执行器项目(xxl-job-executor-sample-spring这个项目)

1.作用:负责接收"调度中心"的调度并执行,可直接部署执行器,也可以将执行器集成到现有业务项目中。

2.maven依赖

确认pom文件中引入了 "xxl-job-core" 的maven依赖;

3.执行器配置

执行器配置,配置文件地址:

/xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-spring/src/main/resources/xxl-job-executor.properties

执行器配置,配置内容说明:

### xxl-job admin address list:调度中心部署跟地址:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调"。
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin

### xxl-job executor address:执行器"AppName"和地址信息配置:AppName执行器心跳注册分组依据;地址信息用于"调度中心请求并触发任务"和"执行器注册"。执行器默认端口为9999,执行器IP默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用。单机部署多个执行器时,注意要配置不同执行器端口;
xxl.job.executor.appname=xxl-job-executor-sample
xxl.job.executor.ip=
xxl.job.executor.port=9999

### xxl-job, access token:执行器通讯TOKEN,非空时启用
xxl.job.accessToken=
    
### xxl-job log path:执行器运行日志文件存储的磁盘位置,需要对该路径拥有读写权限
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler/

### xxl-job log retention days:执行器Log文件定期清理功能,指定日志保存天数,日志文件过期自动删除。限制至少保持3天,否则功能不生效;
xxl.job.executor.logretentiondays=-1

八、部署执行器项目(xxl-job-executor-sample-spring这个项目)

1.如果已经正确进行上述配置,可将执行器项目编译打部署,系统提供多种执行器Sample示例项目,选择其中一个即可,各自的部署方式如下。

xxl-job-executor-sample-springboot:项目编译打包成springboot类型的可执行JAR包,命令启动即可;
xxl-job-executor-sample-spring:项目编译打包成WAR包,并部署到tomcat中。
xxl-job-executor-sample-jfinal:同上
xxl-job-executor-sample-nutz:同上

2.至此“执行器”项目已经部署结束。

3.我部署在了同一个tomcat上面了

九、测试

1.执行器中的要测试的代码

2.要达到每分钟执行一次的效果(页面配置):

 

3.查看日志(达到了一分钟执行一次的效果)

十、结束

上面就是我对xxl-job的简单的认识,有不足之处,还请多指教

参考博客:https://www.cnblogs.com/xuxueli/p/5021979.html

Always keep the faith!!!

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐