目录
1.在启动xxl-job的同时重新开个Springboot项目
一、什么是分布式调度平台
什么是任务调度
任务调度就是指系统为了自动完成特定任务,在约定的特定时刻去执行任务的过程。通俗一点说,任务调度就是传统的定时自动执行的任务。
应用场景:
- 某电商系统需要在每天上午10点,下午3点,晚上8点发放一批优惠券。
- 某银行系统需要在信用卡到期还款日的前三天进行短信提醒。
- 某财务系统需要在每天凌晨0:10结算前一天的财务数据,统计汇总。
- 12306会根据车次的不同,而设置某几个时间点进行分批放票。
- 某网站为了实现天气实时展示,每隔5分钟就去天气服务器获取最新的实时天气信息
二、搭建xxl-job平台
1.官网下载 --- 使用最多的一个
Github上链接:https://github.com/xuxueli/xxl-job/ (多刷两遍就进去了,安心等待)
社区链接:https://github.com/xuxueli/xxl-job.git
2.导入IDEA
记得修改maven,当然也可以不改,主要是setting.xml文件,我用的阿里云加载快点
3.创建数据库和连接数据库
看着操作就行,主要是sql文件去数据库里面建表
别找错了,别找错了,别找错了。
4.启动xxl-job
显示上述,驱动网页,进入界面
网页:http://localhost:8080/xxl-job-admin/jobinfo
初始账户:admin 密码:123456
三、进行集成使用
其实这边就可以用来,但是我将这个jar吧直接加载到啦我的本地电脑上,这样就可以直接调用
1.在启动xxl-job的同时重新开个Springboot项目
官方给的模板
直接考两个文件即可使用
- XxlJobConfig
没报错就直接用,有报错加下面依赖
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.3.0</version>
</dependency>
- application.properties文件
### xxl-job admin address list, such as "http://address" or "http://address01,http://address02"
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin
### xxl-job, access token
xxl.job.accessToken=default_token
### xxl-job executor appname
xxl.job.executor.appname=xxl-job-executor-sample
### xxl-job executor registry-address: default use address to registry , otherwise use ip:port if address is null
xxl.job.executor.address=
### xxl-job executor server-info
xxl.job.executor.ip=
xxl.job.executor.port=9999
### xxl-job executor log-path
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler
### xxl-job executor log-retention-days
xxl.job.executor.logretentiondays=30
将蓝色标记的复制到新项目的application.properties文件当中
四、测试
新项目当中新建包和文件
@XxlJob("aaaaaa")
public void demo(){
XxlJobHelper.log("我要输出的日志");
System.out.println(XxlJobHelper.getJobParam());
//现在是第几台机器
System.out.println(XxlJobHelper.getShardIndex());
//我一共有多少台机器
System.out.println(XxlJobHelper.getShardTotal());
System.out.println("我执行了");
}
此时打开xxl-job网页进行配置
重新启动xxljob和新项目就可以了
下面是如何启动
如果是执行一次新项目则会出现以下,即使成功了
参考资料: